我正在向服务器发送JSONArray,我的脚本对其进行解码并使用其中的数据来更新MYSql数据库。目前的问题是,一切都按原样运行,直到脚本遇到包含撇号的字段,我理解这个字段被php用作转义字符。
如何在保留撇号的同时避免这种情况?我是否在Android端添加了一些东西,然后将其删除到服务器端,还是可以在服务器端忽略它,同时还保留它?
感谢任何帮助。
答案 0 :(得分:1)
在行之间阅读,你的问题不是PHP将撇号视为转义(它不是),而是你不是sanitising your database input。
在MySQL查询中,撇号具有特殊含义(字符串封装器),并且存在未转义的撇号会破坏您的SQL语法。
我不知道您使用的是哪个数据库驱动程序,但您需要其中一个:
...或更好,请使用prepared statements。