SQL注入:在用户的输入没有为转义字符过滤时,就会发生这样这种形式的注入式攻击。所以在在有SQL查询语句的网页中对字符的过滤时很重要的。
在没有任何过滤时,是很危险的,用户可以在提交的数据中,插入自己想要插入攻击代码。
mysql_real_escape_string()
PHP的mysql_real_escape_string() 函数转义 SQL 语句中使用的字符串中的特殊字符。
下列字符受影响:
\x00
\n
\r
\
'
"
\x1a
如果成功,则该函数返回被转义的字符串。如果失败,则返回 false。
mysql_real_escape_string(string,connection)
参数:
string :必须,规定要转义的字符
connection:可选,规定mysql连接,如果为规定,则使用上一个连接
但是使用mysql_real_escape_string()函数还是可能存在绕过。将攻击字符转换一下编码格式即可绕过此函数。