好象不可以防SQL注入
添加新记录时。一些SQL命令和特殊符合还是依然被添加到了数据库中(select,update,')单引号之类的$this->db->insert('news',$data);
$data['field1'] = $this->input->post('field1', true);
这样做依然会被添加进去吗? 虽然被添加进去了,只不过ci没有提示你说有非法字符去了,注入的效果还是没有达到的 jeongee 发表于 2011-9-28 09:02 static/image/common/back.gif
虽然被添加进去了,只不过ci没有提示你说有非法字符去了,注入的效果还是没有达到的 ...
哦,知道了。是否可以这样理解?
CI过滤了特殊的SQL注入语句,从而防止注入。对于一些特殊字符或命令独立是不起作用的,即保持原样写入数据库。 olive1 发表于 2011-9-28 09:29 static/image/common/back.gif
哦,知道了。是否可以这样理解?
CI过滤了特殊的SQL注入语句,从而防止注入。对于一些特殊字符或命令独立 ...
是的 :victory: olive1 发表于 2011-9-28 09:29 static/image/common/back.gif
哦,知道了。是否可以这样理解?
CI过滤了特殊的SQL注入语句,从而防止注入。对于一些特殊字符或命令独立 ...
应该就是这样,让SQL语句不生效,如果强行将有SQL语句的内容过滤掉。那如果文章是介绍数据库SQL语句的话,岂不是要被过滤死了? 对于mysql,ci的ar是用mysql_escape_string()或者mysql_real_escape_string(),这两个函数配合ci的ar是可以彻底杜绝注入的 a123123 发表于 2011-9-28 14:17 static/image/common/back.gif
不知道有这个规定,纯属无意 不错啊
页:
[1]
2