我通过PHP文本框获取数据并使用普通插入命令将其插入MySQL数据库。该文本框接受用户对文本框旁边的特定登录ID的评论。问题是,当用户输入撇号(')例如“我们必须照顾个人电脑”这句话时,会出现错误。插入(Mysql)期间的撇号
我知道为什么会发生这种情况,因为SQL假定它是该值的字符串的结尾,但我不知道如何逃避它。我宁愿在MYSQL中转义它。
如果我在MySQL中逃避它,即使没有错误产生,插入工作正常,它仍然可以作为SQL注入利用?
我通过PHP文本框获取数据并使用普通插入命令将其插入MySQL数据库。该文本框接受用户对文本框旁边的特定登录ID的评论。问题是,当用户输入撇号(')例如“我们必须照顾个人电脑”这句话时,会出现错误。插入(Mysql)期间的撇号
我知道为什么会发生这种情况,因为SQL假定它是该值的字符串的结尾,但我不知道如何逃避它。我宁愿在MYSQL中转义它。
如果我在MySQL中逃避它,即使没有错误产生,插入工作正常,它仍然可以作为SQL注入利用?
您应该使用参数。 – SLaks 2011-12-28 02:16:08
使用MySQLi准备好的语句 – 2014-06-29 12:39:24