mysql:无法检索介于<>之间的数据符号

时间:2010-09-28 18:58:23

标签: php mysql

用php运行sql查询从mysql数据库中检索一些数据。 一切都运作良好,除非数据包含像<和>,然后这些符号之间存在的任何数据都不会显示在输出中。

例如,如果数据类似于“<hello there> how are you?”,则仅显示“how are you?”。

但是当我直接运行查询时,它会向我显示所有内容而不会遗漏任何内容。

我之前已经这样做了,但是我不记得我的头脑是什么。谷歌今天没有帮助我,对我来说是缓慢的一天.... :(

1 个答案:

答案 0 :(得分:3)

您应该使用htmlentities()正确转义数据库响应。

$sql = 'SELECT row_with_text FROM your_table';
$query = mysql_query($sql);
$result = mysql_fetch_array($query);
echo htmlentities($result['row_with_text']);

phpMyAdmin会为您进行转义,但您有责任在应用程序中转义HTML文本。