读书人

见鬼了真的是百思不得其解难道是b

发布时间: 2012-03-26 15:46:56 作者: rapoo

见鬼了,,真的是百思不得其解,难道是bug???
一段语句

$str='<pre><span style="color:red">123</span></pre>';

在临插入数据库的时候我打印出来,,观看源代码就是这样的,

诡异的是

存入数据库后,,在显示出来,源代码居然变成

<pre><span style="color:red">123</span></pre>

而数据库里存的也是这个,,真是邪门了。。。。

难道bug??

[解决办法]
我打印出sql语句都没问题
-----------------------
确定浏览器源代码里看这行输出<pre>也没转化?
[解决办法]

看数据库数据是否正常。
不正常检查:
echo $sql 之后 INSERT之前有没实体化了。

正常:
即是实体化输出了。
[解决办法]
转义字符的问题吧。

使用addslashes函数将数据插入到数据库中,读取时使用stripslashes函数还原为正常的数据。
[解决办法]
TP入库自动处理了的吧
[解决办法]
同意楼上的,是为了防止SQL注入式攻击。上次的加那个转义没有用的。不过好像把标签的"<"和">"(。<pre>)替换为"&\lt","&\gt"。这样既可以正确显示代码,又不会使代码被执行
[解决办法]
你用thinkphp ,thinkphp的插入都把标签给转换了

读书人网 >PHP

热点推荐