五月 26th, 2015 by lanxinxichen@126.com

在做第三方接口对接的时候,有些数据返回的都是json字符串,所以在处理的时候,有时候需要将json字符串给存到数据库中,因为在ecshop 中全部用的都是sql语句插入的,所以有时候json字符串中有一些非法字符,会吧sql语句给中断,比如”()”这种.

为了避免出现这种问题,使用mysql_real_escape_string函数给转化成对数据库安全的字符串.

然而在转化的时候,把一些不希望存入数据库的一些字符串页给转化了一下.之后在用explore处理该字符串的时候,一直报错,并且看到的字符串是乱码的.

开始以为是编码方式和字符集的问题,于是使用iconv 和mb_detect_encoding mb_convert_encoding 去转化,都无法生效,同样的explore也无法分割.直到发现是mysql_real_escape_string的原因…

所以转移字符并不是什么地方都可以使用的.

Posted in 数据库 Tagged with: , , ,