php防注入

/*
 *通用防注入
 * add by wangbin,2011-07-10
 * email:[email protected]
 */
function inject_check($str){
 $tmp=preg_match('/select|insert|update|delete|\'|\/\*|\*|\.\.\/|\.\/|union|into|load_file|outfile/', $str); // 进行过滤
 if($tmp){
  echo "输入非法注入内容!";
  exit();
 }else{
  return $str;
 }
}
$id=inject_check($_GET['id']);

echo $id;


函数 set_magic_quotes_runtime() 作用

           检测状态用get_magic_quotes_runtime,返回 0 表示关闭本功能;返回 1 表示本功能打开。若 magic_quotes_runtime 打开时,所有外部引入的数据库资料或者文件等等都会自动转为含有反斜线溢出字符的资料。

function y_addslashes($string) {
 if(is_array($string)) {
  foreach($string as $key => $val) {
  $string[$key] = y_addslashes($val);
  }
 } else {
  $string = addslashes($string);    //用反斜线引用字符串
 }
 return $string;
}
set_magic_quotes_runtime(0);
y_addslashes($_GET);
y_addslashes($_POST);
y_addslashes($_COOKIE);

注:此方法是csdn论坛 一个人写的 感觉还不错 所以就copy过来、、、


你可能感兴趣的:(php)