微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

php – 如果我删除所有特殊字符,可以使用Sql注入?

参见英文答案 > How can I prevent SQL injection in PHP?                                    28个
如果我删除字符串中的所有特殊字符比没有任何sql注入的机会??(我的输入中不需要任何特殊字符)

我正在使用以下代码删除所有特殊字符

    $unsafe = $_GET["tag"];
$safe = preg_replace('/[^a-zA-Z0-9 ]/s', '', $unsafe);
$safe = MysqL_real_escape_string($safe);

有没有机会进行sql注入?

解决方法:

如果你使用MysqL_real_escape_string,那么没有理由删除“不安全字符”,因为它会使它们都安全.

但是,不建议使用MysqL_ *函数,因为它们很难正确使用. PHP开发人员现在建议使用PDOmysqli_* functions.有关如何使用PDO或MysqLi参数化查询,请参阅this answer.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐