关于防止sql注入和css注入

addslashes()函数和htmlspecialchars()函数

addslashes(),

向字符串中的预定义字符添加反斜杠进行转义,

预定义字符:

  • 单引号(')
  • 双引号(")
  • 反斜杠(\)
  • NULL

这样的做法可以预防sql的注入


htmlspecialchars(),

htmlspecialchars($kind_emailsAdd,ENT_QUOTES);

对$lomd_emailsAdd 这个字符串变量进行转义,转为html实体

第二个参数为将字符串内的双引号和单引号一起转义为html实体

这样做可以防止XSS

附上一篇自己写防XSS代码

校验方法:

public function verification($varibale)
    {              
        $vitaArray = 
        [
                    "/",
                    '<',
                    '>',
                    '\'',
                    "\"",
                    '\\',
                    '&',
                    '$',
                    '%',
                    '=',
                    'or',
                    'and', 
                    'alert',
                    'script',
                    '(',
                    ')',
                    '?',
                    '~',
                    '!',
                    '*',
                    '-',
                    '#',
                    ' '
        ];
         $backVal = '';

        foreach ($vitaArray as $value) 
        {   
            $striP_Search = stripos(' '. $varibale, $value);
            if($striP_Search)
                $backVal .= $value . ' ';
        }
        return $backVal; 
    }
foreach ($gylAdmin as $value) 
        {            
        $verification = $this->getUtils()->verification($value);
         if ($verification)
            $backVal .= $verification; 
        }
         if ($backVal) 
            return $this->error('非法字符' . $backVal);


猜你喜欢

转载自blog.csdn.net/qq_34886247/article/details/80768508
今日推荐