当前位置:Gxlcms > PHP教程 > php表单安全过滤究竟要怎么做?

php表单安全过滤究竟要怎么做?

时间:2021-07-01 10:21:17 帮助过:22人阅读

网上好多方法,看来看去也不知道该用什么。
具体需要过滤什么才能做到安全?用什么函数?
用什么函数或方法过滤不和谐词语最合适?

最好给出一整套代码。片段看得太多,已经乱了。。。

回复内容:

网上好多方法,看来看去也不知道该用什么。
具体需要过滤什么才能做到安全?用什么函数?
用什么函数或方法过滤不和谐词语最合适?

最好给出一整套代码。片段看得太多,已经乱了。。。

  • 表单层验证。页面上输入的能用js验证的就验证,js也有很多验证不同字符的函数,根据情况而定

  • 程序层验证。主要考虑在SQL方面了,当然了PHP里面对于字符处理很多函数,根据自己的需求用不同的函数即可

提供个防SQL注入的小方法

    /**
     * description 过滤转义POST|GET
     */
    final public static function isEscape($val, $isboor = false) {
        if (! get_magic_quotes_gpc ()) {
            $val = addslashes ( $val );
        }
        if ($isboor) {
            $val = strtr ( $val, array (
                    "%" => "\%",
                    "_" => "\_" 
            ) );
        }
        return $val;
    }

当然了,如果你用的PDO的话,PDO预处理可以有效的防止SQL注入

1.防止表单重复提交,1.用表单令牌可以解决,2.点击提交按钮后,立即禁用button按钮
2.防止表单提交多余的数据, PHP 接收POST的时候,需要过滤,哪些是表单的,哪些的用户构造的
3.防止SQL注入,进行类型强制转换和采用PDO绑定参数方式操作数据库(参见thinkphp数据库类)
4.防止XSS攻击,需要过滤掉