请教SQL注入的问题

skyaspnet 2010-07-27 03:47:32
请问在PHP中如果使用了存储过程,可以防止SQL注入吗?

请教大侠给出比较完善的解决方案,谢谢!
...全文
103 12 打赏 收藏 举报
写回复
12 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
skyaspnet 2010-08-02
感谢大家
  • 打赏
  • 举报
回复
skyaspnet 2010-07-29
[Quote=引用 9 楼 cunningboy 的回复:]

引用 8 楼 skyaspnet 的回复:

引用 4 楼 xuzuning 的回复:

只要你不是不加判断的使用传入的数据,就没有SQL注入的危险


MYSQL的存储过程使用了参数,这样即使不作判断(先不考虑XSS等问题),至少对数据库不会有破坏吧?谢谢!

调用存储过程,传递参数和查询语句传递参数都应该对参数进行判断,推荐使用bind_param方式来传递,这样才能确保没……
[/Quote]

也就是说绑定之前还需要再进行相应的判断和过滤?谢谢!
  • 打赏
  • 举报
回复
CunningBoy 2010-07-28
[Quote=引用 8 楼 skyaspnet 的回复:]

引用 4 楼 xuzuning 的回复:

只要你不是不加判断的使用传入的数据,就没有SQL注入的危险


MYSQL的存储过程使用了参数,这样即使不作判断(先不考虑XSS等问题),至少对数据库不会有破坏吧?谢谢!
[/Quote]
调用存储过程,传递参数和查询语句传递参数都应该对参数进行判断,推荐使用bind_param方式来传递,这样才能确保没有注入的风险。
  • 打赏
  • 举报
回复
skyaspnet 2010-07-28
[Quote=引用 4 楼 xuzuning 的回复:]

只要你不是不加判断的使用传入的数据,就没有SQL注入的危险
[/Quote]

MYSQL的存储过程使用了参数,这样即使不作判断(先不考虑XSS等问题),至少对数据库不会有破坏吧?谢谢!
  • 打赏
  • 举报
回复
qian_lian 2010-07-27
学习。。。。。。
  • 打赏
  • 举报
回复
davy152486 2010-07-27
and char(124)+user+char(124)=0 and '%'='
  • 打赏
  • 举报
回复
myhope88 2010-07-27
一般用参数再加上过滤方法都可以有效防止
  • 打赏
  • 举报
回复
xuzuning 2010-07-27
只要你不是不加判断的使用传入的数据,就没有SQL注入的危险

  • 打赏
  • 举报
回复
CunningBoy 2010-07-27
恩,是的
  • 打赏
  • 举报
回复
skyaspnet 2010-07-27
[Quote=引用 1 楼 cunningboy 的回复:]

关键是你的参数传递前要用mysql_real_escape_string去除控制字符
或者使用bing_param的方式传递参数给SQL
[/Quote]

使用bing_param可以防止SQL注入吧?
  • 打赏
  • 举报
回复
CunningBoy 2010-07-27
关键是你的参数传递前要用mysql_real_escape_string去除控制字符
或者使用bing_param的方式传递参数给SQL
  • 打赏
  • 举报
回复
发帖
基础编程

2.1w+

社区成员

从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
帖子事件
创建了帖子
2010-07-27 03:47
社区公告
暂无公告