0

我正在尝试将字符串从 PHP 变量传递到 HTML

 <a href="javascript:deleteProduct('<?=addslashes($row['productName'])?>');"

问题在于撇号。该字符串可能同时包含单撇号和双撇号 ' 和 " ,如下例所示:

<a href="javascript:deleteProduct('Richdel, 2400\', 1\", fi fara solenoid');"

由于不正确使用撇号,语法错误,它不会触发Javascript函数。它处理为 \" 将是 href 属性值的结尾。

我该如何解决这个问题?

4

2 回答 2

2
<?= htmlentities(addslashes($row['productName'])) ?>

会将"s 变成&quot;,所以它们会变成 HTML。

于 2011-03-08T12:48:21.337 回答
0

一个简单的字符串替换将完全删除这两种类型的引号。

<?php echo str_replace("'", '', str_replace('"', '', $row['product'])); ?>
于 2011-03-08T12:55:19.813 回答