php判断文件上传类型及过滤不安全数据的方法

yipeiwu_com6年前PHP代码库

本文实例讲述了php判断文件上传类型及过滤不安全数据的方法。分享给大家供大家参考。具体如下:

禁止上传除图片文件以外的文件,提示,不要获取文件扩展名来判断类型,这样是最不安全的,我们用$_FIlES['form']['type'].

这个可以读取文件内容来识别文件类型,但它能识别的有限,不过如果你用图片就足够了解.函数,过滤不安全字符,实例函数代码如下:

复制代码 代码如下:
function s_addslashes($string, $force = 0) {
 if(!get_magic_quotes_gpc()) {
  if(is_array($string)) {
   foreach($string as $key => $val) {
    $string[$key] = s_addslashes($val, $force);
   }
  } else {
   $string=str_replace("&#x","& # x",$string); //
 
//过滤一些不安全字符
   $string = addslashes($string);
  }
 }
 return $string;
}
 
//用法实例:
$_COOKIE = c_addslashes($_COOKIE);
$_POST   = c_addslashes($_POST);
$_GET   = c_addslashes($_GET);
 
//在公共文件中加入
if($_FILES){ 
 foreach( $_FILES as $key => $_value )
 {
  $_FILES[$key]['type'] =$_value['type'];  
 }
 if(substr($_FILES[$key]['type'],0,6) !='image/')
 {
  exit;
 }
}

希望本文所述对大家的PHP程序设计有所帮助。

相关文章

session在PHP大型web应用中的使用

这时,函数bool session_set_save_handler ( callback open, callback close, callback read, callback w...

PHP伪静态写法附代码

比如这个网页 //www.jb51.net/soft.php/1,100,8630.html 其实处理的脚本是soft.php 参数为1,100,8630 相当于soft.ph...

php判断当前操作系统类型

如何使用php获取当前操作系统类型呢?严格来说这里分两种情况,一种情况是获取服务器端的操作系统类型,一种是获取客户端的操作系统类型。下面作者将对如何使用php获取这两种情况下的操作系统类...

php常用的工具开发整理

php常用的工具开发整理

PHP开发工具及其优缺点 首先,可以用记事本来开发。 记事本每个人的电脑上都有,也就是我们常说的txt文件。把txt这个后缀更改为点PHP就可以了。然后该怎么编辑就怎么编辑。缺点是, 没...

PHP开发注意事项总结

1.使用内嵌的HTML代码,而不是PHP的echo语句。 因为PHP是一门嵌入式Web编程语言,可以将HTML代码和PHP代码相互嵌入。但是很多程序员担心在HTML代码中过多的使用”"嵌...