Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/243.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_Html - Fatal编程技术网

PHP和HTML的字符问题

PHP和HTML的字符问题,php,html,Php,Html,我有一个变量,就像 $name='18英寸液晶电视' 当我尝试在HTML输入中使用它时,它不会显示字符后面的“ 我能做什么?使用htmlspecialchars或htmlspecialchars: htmlentities将执行所有html标记 htmlspecialchars只需执行以下操作: & " ' < > 因此,18之后的“关闭value属性当您在HTML中输出特殊字符(&“)时,您需要对其进行转义,1方法是这样做的: $name=htmlentities('18

我有一个变量,就像

$name='18英寸液晶电视'

当我尝试在HTML输入中使用它时,它不会显示字符后面的“


我能做什么?

使用
htmlspecialchars
htmlspecialchars

htmlentities
将执行所有html标记

htmlspecialchars
只需执行以下操作:

& " ' < >

因此,18之后的
关闭value属性

当您在HTML中输出特殊字符(
&“
)时,您需要对其进行转义,1方法是这样做的:


$name=htmlentities('18“LCD TV');

不使用
htmlspecialchars
可能会导致跨站点脚本攻击(搜索XSS)。请使用以下方法:

<input type="text" value="<?php echo htmlspecialchars($name, ENT_QUOTES);?>" />

我们需要看看您是如何在HTML中显示它的。我猜双引号过早地关闭了标记。它没有显示它在哪里?您试图在哪里访问用户输入的值,在客户端的javascript中,还是在服务器端处理您的表单?
<input type="text" value="<?php echo $text;?>" />
value="18 " LCD TV"
<input type="text" value="<?php echo htmlspecialchars($name, ENT_QUOTES);?>" />