用php运行sql查询从mysql数据库中检索一些数据。 一切都运作良好,除非数据包含像<和>,然后这些符号之间存在的任何数据都不会显示在输出中。
例如,如果数据类似于“<hello there> how are you?
”,则仅显示“how are you?
”。
但是当我直接运行查询时,它会向我显示所有内容而不会遗漏任何内容。
我之前已经这样做了,但是我不记得我的头脑是什么。谷歌今天没有帮助我,对我来说是缓慢的一天.... :(
答案 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文本。