我在转义PHP中的引号时遇到麻烦。
我有一张产品表,每一行都有一个onclick函数,以产品名称作为参数。

名称包含以英寸为单位的长度,因此名称包含引号。我在字符串周围包裹了addslashes()。这会在引号之前添加一个反斜杠,但由于某种原因,它似乎无法逃脱字符!

这是我的代码片段:

<?$desc1 = addslashes($row['Desc1']);?>

<tr class='tableRow' onclick='afterProductSelection("<?=$desc1?>")'>

<td><?=$row['Desc1']?></td>

当我在Google Chrome浏览器中检查元素时,语法的颜色指示该元素尚未转义,单击它会给我一个语法错误。

我可能缺少一些简单的东西。希望能对您有所帮助!

最佳答案



我认为您要寻找的功能是htmlentities()

<?=htmlentities($desc1, ENT_QUOTES)?>

http://ca1.php.net/htmlentities

10-04 11:17