Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/235.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP中的引号回音破坏HTML值_Php_Mysql_Html - Fatal编程技术网

PHP中的引号回音破坏HTML值

PHP中的引号回音破坏HTML值,php,mysql,html,Php,Mysql,Html,我有一个HTML表单值作为PHP函数:“value=”“$item->get_title()”(这是在一个echo语句中,因此是单引号)。问题是,如果返回的标题包含任何引号,它会中断value函数 示例:value=“Kim Dotcom律师抨击美国政府的“拖延模式”> 正如你所看到的,它在政府处断裂。应该在这之后有一个撇号 有人知道这个问题的解决方法吗 修复:value=”.htmlspecialchars($item->get\u title(),ENT\u QUOTES)。“尝试: val

我有一个HTML表单值作为PHP函数:“
value=”“$item->get_title()”
(这是在一个
echo
语句中,因此是单引号)。问题是,如果返回的标题包含任何引号,它会中断value函数

示例:
value=“Kim Dotcom律师抨击美国政府的“拖延模式”>

正如你所看到的,它在
政府
处断裂。应该在这之后有一个撇号

有人知道这个问题的解决方法吗

修复:
value=”.htmlspecialchars($item->get\u title(),ENT\u QUOTES)。“
尝试:

value='".str_replace('"', '', $item->get_title())."'
试一试

用于转义不打算呈现为HTML的输出:

value="'.htmlspecialchars($item->get_title(), ENT_QUOTES).'"

默认情况下,htmlspecialchars只转义双引号,而不是单引号。如果您想同时转义两个引号(并保持将HTML值放在单引号中的做法),请添加
ENT\u quotes
,作为
htmlspecialchars

的第二个参数。错误-addslashes不会转义为HTML;这是SQL转义的老方法(可能还有其他一些东西,比如JSON;我现在想不出任何东西是最好的报价工具)sorta会起作用,但它会更改数据,这可能仍然存在问题。这似乎不起作用,它仍然与上图中所示相同,如果不交换“‘到’”,这根本不起作用。在我交换了它们并且提要正在加载后,它仍然无法正确显示:(编辑:添加了ENT_引号,效果很好!非常感谢您将在上面添加编辑。)。
value="'.htmlspecialchars($item->get_title(), ENT_QUOTES).'"