php过滤sql注入关键词分析
php教程过滤sql注入关键词分析
str_replace替换sql 中的 update 这种做法本身就是错误的, 原因如下:
如果sql中本来就有update字段,如以下的SQL
$sql = "update content = 'update your name ..' where userid=1"
那么,你用str_replace替换的后果是什么? 只要用户提交的内容中包含有update,
delete, alter均被篡改? 这是多么可怕的事!!!
那么正确的办法是什么呢?
$content = mysql教程_real_escape_string($content);
$sql = "update content = '$content' where userid=1
两个要点:
1.使用mysql_real_escape_string代替 addslashes对输入进行转义
2.字段值两边加上单引号
补充:Php教程,Php常用代码