在上传之前我想判断是不是图片文件,//$pt=spliti('/',$file['type']);
if (($file['type']!== 'image/jpg')|| ($file['type'] !== 'image/gif') || ($file['type'] !=='image/x-png') || $file['type']!== 'image/bmp' )
用这个做判断,我发现老是出错,说上传文件有错误于是我就 echo "$file['type']";发现同样是jpg文件,有的就显示image/pjeg,有两个jpg文件,什么也没显示
是怎么回事如果解决

解决方案 »

  1.   

    你是window系统吧,window会有这样的问题——把pjeg、jpg区别
      

  2.   

    $_FILES['userfile']['type']
    文件的 MIME 类型,如果浏览器提供此信息的话。一个例子是“image/gif”。不过此 MIME 类型在 PHP 端并不检查,因此不要想当然认为有这个值。
    ----手册的说明
      

  3.   

    写一个获取文件后缀的函数,然后进行判断
    function getfiletype($filename){
        $dot=strrpos($filename,".");    //获取最后一次“.”出现的位置号
        return substr($filename,$dot)   //截取最后一次“.”后的所有字符
    }
    $allowtype="jpg,gif,bmp";
    $newtype=getfiletype($filename);
    if(strstr($allowtype,$newtype)){
        echo "类型正确";
    }
    else{
        echo "类型错误";
    }
      

  4.   

    呵呵,LZ运气不错,我昨天刚做的个图片类型鉴别//alert(); 和 back();都是自定义函数
    $ftype =$f['type'];
    $fftype = explode("/",$ftype);
    if($fftype[0]!="image"){
    die(alert("对不起,不能上传非图片类型的文件!").back());
    }
      

  5.   

    PS:
    LZ注意一下
    image/pjeg 和 image/jpg
    虽然后面不一样,可是前面一样啊!
    都是 image 类型反正有分隔符分开了,你就直接验证分隔符之前的内容不就好了么?
      

  6.   

    PS再PS
    $f = $_POST['你上上传的文件']
      

  7.   

    公司要开发一个面对外国人的外文网站,给老外提供各种服务,想请2~3名开发人员,主要是对Discuz系统进行修改,然后添加一些个性功能
    对该职位有兴趣的朋友可以发邮件到[email protected]
    公司现在经营的是给老外找房子的业务,网址sinohousing.com
    谢谢支持
      

  8.   

    终于可以发言了
    差点误认子弟了
    $f = $_FILES['你上上传的文件']