账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    Thinkphp3.2防sql注入
    42
    0
    tp的I函数,可以对传参进行安全过滤。但是项目一直都是直接用的$_GET和$_POST来接值。 现在想统一替换为I接值。 需要改动的地方太多,想请问是否可以在基类控制器里,写一个赋值?例如: if($_GET){ foreach ($_GET as $key => $value) { $_GET[$key] = I("get.".$key); } } if($_POST){ foreach ($_POST as $key => $value) { $_POST[$key] = I("post.".$key); } }请问这样写会不会引发一些意外问题?
    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    • 不想般配 普通会员 1楼

      ThinkPHP3.2中,防sql注入主要是通过以下几个方面实现的:

      1. 输入验证:在接收用户输入的时候,可以通过正则表达式进行验证,避免SQL注入。

      2. SQL参数绑定:在执行SQL语句的时候,可以将参数绑定到变量中,避免SQL注入。

      3. SQL预编译:在执行SQL语句的时候,可以使用预编译语句,避免SQL注入。

      4. 使用安全的连接方式:在连接数据库的时候,应该选择安全的连接方式,如SSL/TLS连接。

      5. 使用安全的模型:在处理模型数据的时候,应该使用安全的模型,如ORM模式。

      6. 使用过滤器:在使用模型数据的时候,可以使用过滤器进行过滤,避免SQL注入。

      7. 使用角色机制:在进行权限管理的时候,可以使用角色机制,将用户分组,避免SQL注入。

      8. 使用安全的控制器:在处理控制器数据的时候,应该使用安全的控制器,如控制器模型。

      以上就是在ThinkPHP3.2中防止sql注入的方法。

    更多回答
    网站公告
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部