0

可能重复:
如何正确转义 PHP 中的 HTML 表单输入默认值?

如果我使用预设的 HTML 输入,例如:

$lmao=$_POST['lmao'];

echo <<<EOD
<input value="{$lmao}" name="lmao" type="text">
EOD;

如果"字符进入变量,则会导致便便,并且在重新提交时也会丢失数据。

我当然可以:

preg_replace('/"/', '', $lmao);

但是,如果我想保留那句话怎么办?

4

1 回答 1

2

在 HTML 属性中输出的所有用户输入数据都应通过 htmlspecialchars 运行。这对引号和其他字符进行编码:

echo '<input value="'.htmlspecialchars($lmao).'" name="lmao" type="text">';
于 2012-07-29T09:00:20.090 回答