在文本输入中的“引号”中显示文本

时间:2014-01-28 16:24:57

标签: php html forms input

我正在对数据库进行查询,并在输入类型文本中显示值,如下所示:

<input type='text' name='title' value="<?php echo  $noticia->_title; ?>" />

如果来自数据库的文本在“”内,则文本不会出现,因为值为“”。如果切换到'',如果来自数据库的文本在''内,则会出现同样的问题。我该如何解决这个问题?

2 个答案:

答案 0 :(得分:3)

value="<?php echo htmlspecialchars($noticia->_title) ?>"

htmlspecialchars()会对那里的任何HTML metacharcters进行编码,否则会破坏你的形式,例如

$title = 'Hello "Joe"';

<input ... value="Hello "Joe"" />
                        ^---breaks the form

变为

$title = htmlspecialchars('Hello "Joe"');
<input ... value="Hello &quot;Joe&quot;" />

答案 1 :(得分:2)

使用htmlspecialchars将文本转换为HTML。

echo htmlspecialchars($noticia->_title);