zoukankan      html  css  js  c++  java
  • PHP安全,防止SQL注入(输入过滤,输出转义)

    (1)magic_quotes_gpc选项打开,在这种情况下所有的客户端GET和POST的数据都会自动进行addslashes处理

    (2)防止对数字值的SQL注入,如用intval()等函数进行处理

    (3)mysql_real_escape_string( string )  addslashes(string)

    以上是利用PHP自带函数来防止SQL注入

    下面提供一个例子,是在一个页面实现过滤,然后,需要用到的页面引入代码即可

    #整站防注入

    if (@magic_quotes_gpc()) {

      $_GET = sec($_GET);

      $_POST = sec($_POST);

      $_COOKIE = sec($_COOKIE);

      $_FILES = sec($_FILES);

    }

    #统一处理输入变量

    function sec($array) {

      //如果是数组,遍历数组,递归调用

      if (is_array($array)) {

        foreach($array as $k => $v) {

          $array[$k] = sec($v);

        }

      } else if (is_string($array)) {

        //使用addslashes函数处理

        $array = addslashes($array);

      } else if (is_numeric($array)) {

        $array = intval($array);

      }

      return $array;

    }

  • 相关阅读:
    HDNOIP201404最短路径
    BJOI2015 Day3
    BJOI2015 Day2
    BJOI2015 Day1
    BZOJ4012 [HNOI2015]开店
    hdu2159(二维完全背包)
    hdu3496(二维背包)
    hdu3033(变形分组背包)
    hdu1267(递推)
    hdu1503(最长公共子序列)
  • 原文地址:https://www.cnblogs.com/warmsun/p/6524242.html
Copyright © 2011-2022 走看看