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程序设计有所帮助。

相关文章

PHP简单装饰器模式实现与用法示例

本文实例讲述了PHP简单装饰器模式实现与用法。分享给大家供大家参考,具体如下: <?php //装饰器模式-在不改变原有类的结构上,对类的功能那个作补充 //武器基类...

PHP服务端环境搭建的图文教程(分享)

PHP服务端环境搭建的图文教程(分享)

一、PHP服务端环境搭建 1.php 服务端环境 安装套件 xampp(apach+mysql+php解释器) F:\MyDoc文件(重要)\DL_学习\download重要资源\apa...

php搜索文件程序分享

php搜索文件程序分享

对于本地,我们可以利用windows自带的查找去进行查找,但是对于线上的话,如查找ftp空间里面文件,本程序是很有用的。 php文件查找器源码: <html> <...

Android App中DrawerLayout抽屉效果的菜单编写实例

Android App中DrawerLayout抽屉效果的菜单编写实例

抽屉效果的导航菜单 看了很多应用,觉得这种侧滑的抽屉效果的菜单很好。 不用切换到另一个页面,也不用去按菜单的硬件按钮,直接在界面上一个按钮点击,菜单就滑出来,而且感觉能放很多东西。...

举例详解PHP脚本的测试方法

一、常用测试示例 我们经常会遇到这种情况:将一些没有经过任何测试的遗留代码进行重新编写测试,甚至这些代码还是用面向对象写的。要对这样的代码进行测试,我的建议是把代码分解成块,这样就容易测...