由于安全性问题是不能直接访问客户端文件的最好是上传到服务器后再判断过,如果你一定需要这个功能,可以使用iframe先提交到服务器然后再返回相关信息可以去这里查看我的回复,这个是生成缩略图的,你更改下其中的php代码,获取你需要的信息判断下然后输出对应的js
http://topic.csdn.net/u/20080826/12/f2e5cc28-2750-41f5-bae7-1bf0d210f439.html

解决方案 »

  1.   

    哦?这么说php的file_type就能够保证安全喽?
      

  2.   

    不懂php
    .net的话是用
    if (!(file.ContentType == "image/gif" || file.ContentType == "image/pjpeg"))
    来判断
    估计原理差不多
      

  3.   

    这是PHP if(file_type!="image/pjpeg") 基本差不太多
      

  4.   


    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
    <title>无标题文档</title></head><body>
    <form   name=Myform >  
    <p><font color="red" size="6">上传文件支持格式:gif,jpg,jpeg,png,bmp</font></p>
      <p>上传文件大小限制:
        <input type="text" size="4" value="100" name="fileSizeLimit" id="fileSizeLimit"/>
        K</p>
     <p>
      图片高度大小限制:<input type="text" size="4" value="100" name="heightLimit" id="heightLimit"/>
     </p>
     <p>
      图片宽度大小限制:<input type="text" size="4" value="100" name="widthLimit" id="widthLimit"/>
     </p>
      <p>   
        <input   type=file   name=photo onchange="changeSrc(this)" />
        
       
      预览:<img src="about:blank" id="fileChecker"  name="fileChecker" alt="test"/>
    </p>
      <p>
        <input   type=submit   value=submit>
      </p>
    </form>   
    <SCRIPT   LANGUAGE="JavaScript"><!--
    /**
     判断要上传的图片文件大小、长度和宽度!
    */   
      function   CheckFileSize()   
      { 
        var limit = document.getElementById("fileSizeLimit").value * 1024;
     var width = document.getElementById("widthLimit").value ;
     var height = document.getElementById("heightLimit").value;
     
     if (oFileChecker.fileSize > limit)
     {
      alert("文件大小:"+oFileChecker.fileSize+"字节 too large!");
     }
     else
     {
      alert("文件大小:"+oFileChecker.fileSize+"字节ok");
     }
     
       if(  oFileChecker.height> height){
      alert("文件高度:"+oFileChecker.height+" too height!");
     }
     else
     {
      alert("文件高度:"+oFileChecker.height+"ok");
     }
      if(  oFileChecker.width> width){
      alert("文件宽度:"+oFileChecker.width+" too height!");
     }
     else
     {
      alert("文件宽度:"+oFileChecker.width+"ok");
     }
          return   false;   
      } 
      var right_type=new Array(".gif",".jpg",".jpeg",".png",".bmp");  var oFileChecker = document.getElementById("fileChecker");function changeSrc(filePicker)

     if(!checkImgType(filePicker.value))
     {
      alert("文件格式不正确!");
      return;
     }
     oFileChecker.src = filePicker.value;
    }oFileChecker.onreadystatechange = function ()

     if (oFileChecker.readyState == "complete")
     {
      CheckFileSize();
     }
    } /**
       判断上传文件格式是否正确
     */
     function checkImgType(fileURL)
    {
     //本程序用来验证后缀,如果还有其它格式,可以添加在right_type;
     var right_typeLen=right_type.length;
     var imgUrl=fileURL.toLowerCase();
     var postfixLen=imgUrl.length;
     var len4=imgUrl.substring(postfixLen-4,postfixLen);
     var len5=imgUrl.substring(postfixLen-5,postfixLen);
     for (i=0;i<right_typeLen;i++)
     {
      if((len4==right_type[i])||(len5==right_type[i]))
      {
       return true;
      }
      }
    }
      //--></SCRIPT>  
    </body>
    </html>