我想显示html形式的文本(文本字段),来自数据库,所以我使用以下代码
....
.....
<input type="text" name="txtqname" id="txtqname" value="<?=$myvar ?>"></input>
....
.....
这里$myvar是一个变量,它的值来自数据库,可能包含单引号或双引号。因此,我的文本没有正确显示在文本字段中,因为我想。我尝试用单引号代替双引号
....
.....
<input type='text' name='txtqname' id='txtqname' value='<?=$myvar ?>'></input>
....
.....
但是我仍然没有得到正确的文本。请帮帮我。
很简单,你所要做的就是:
<input type="text" name="txtqname" id="txtqname" value="<?= htmlspecialchars( $myvar ) ?>"></input>
只使用htmlentities()
或htmlspecialchars()
您应该使用适当的addslashes()和stripslashes()来格式化数据。在插入数据库之前,请确保每个数据都正确格式化。也可以试试mysql_real_escape_string()
你可以使用htmlentities函数与ENT_QUOTES,
示例:htmlentities($myvar, ENT_QUOTES);
ENT_QUOTES将转换双引号和单引号