1.使用mysql_real_escape_string代替 addslashes对输入进行转义 2.字段值两边加上单引号
str_replace替换sql 中的 update 这种做法本身就是错误的, 原因如下:
如果sql中本来就有update字段,如以下的SQL
| 代码如下 | 复制代码 |
| $sql = "update content = 'update your name ..' where userid=1" | |
那么,你用str_replace替换的后果是什么? 只要用户提交的内容中包含有update,
delete, alter均被篡改? 这是多么可怕的事!!!
Angel工作室企业网站管理系统全DIV+CSS模板,中英文显示,防注入sql关键字过滤,多浏览器适应,完美兼容IE6-IE8,火狐,谷歌等符合标准的浏览器,模板样式集中在一个CSS样式中,内容与样式完全分离,方便网站设计人员开发模板与管理。系统较为安全,以设计防注入,敏感字符屏蔽。新闻,产品,单页独立关键字设计,提高搜索引擎收录。内置IIS测试,双击打启动预览网站 Angel工作室企业网站
那么正确的办法是什么呢?
立即学习“PHP免费学习笔记(深入)”;
| 代码如下 | 复制代码 |
| $content = mysql教程_real_escape_string($content); $sql = "update content = '$content' where userid=1 |
|










