欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

求一段php+mysql防注入代码

程序员文章站 2023-12-27 11:28:09
...
MySQL PHP 防注入 网上找了很多个。大部分都 报错。或者防注入功能不能用。

回复讨论(解决方案)

if (get_magic_quotes_gpc()) {    $lastname = stripslashes($_POST['lastname']);}else {    $lastname = $_POST['lastname'];}// 如果使用 MySQL$lastname = mysql_real_escape_string($lastname);$sql = "INSERT INTO lastnames (lastname) VALUES ('$lastname')";

if (get_magic_quotes_gpc()) {    $lastname = stripslashes($_POST['lastname']);}else {    $lastname = $_POST['lastname'];}// 如果使用 MySQL$lastname = mysql_real_escape_string($lastname);$sql = "INSERT INTO lastnames (lastname) VALUES ('$lastname')";



这应该是每个获取的值都进行处理的吧,有没有只要包含了一个文件自动过滤,像asp的枫叶防注入一样的?

你可以将它封装成函数,传值调用就方便了。

建议你看看韩顺平的防注入视频 名字叫《PHP数据库编程陷阱视频教程》。http://php.itcast.cn/news/5805c1ea/1b18/41eb/8fcc/6234659d8b40.shtml这是连接。

你可以将它封装成函数,传值调用就方便了。

是的,但函数调用起来比较麻烦,每个获取的值都写一次。

mysqli 和 PDO 都提供了数据绑定,不需要再自己处理

不过自己应该对自己负责任,怕麻烦可是不行的

提供一个方法,对提交的变量等进行关键字过滤。

$perl="/select|update|delete|insert|alter/iUs";
$str=preg_replace($perl,"",$str);

上一篇:

下一篇: