【问题标题】:How to determine the file size before HTML/PHP Upload? [duplicate]如何在 HTML/PHP 上传之前确定文件大小? [复制]
【发布时间】:2015-07-18 01:02:52
【问题描述】:

可能重复:
Client Checking file size using HTML5?

如何在文件传输之前通知服务器文件大小?使用 HTML/HTML5、JS 和 PHP(没有 Flash)?

我想阻止它,在上传过程之前上传大文件;有可能吗?

非常感谢你,对我的德语英语感到抱歉..

b

【问题讨论】:

    标签: php html upload


    【解决方案1】:
    if (typeof FileReader !== "undefined") {
    var size = document.getElementById('myfile').files[0].size;
    // check file size
    }  
    

    【讨论】:

    【解决方案2】:

    对于客户端,请查看 File API 它的 html5 功能,尽管有些浏览器无法正常工作。 compatibility list

    【讨论】:

      【解决方案3】:
      $(function(){
      
            $('#submit_button_id').click(function(){
      
                  var f=this.files[0]
                  if(f.size > 10000 || f.fileSize > 10000)
                  {
                     return false;
                  }
              });
          });
      

      【讨论】:

      • 提问者希望阻止上传大文件,并且只有在文件上传后才能使用
      • 在这种情况下传输(上传)已经完成
      • 更新为在上传前检查客户端
      【解决方案4】:

      看看PHP filesize function

      另外,您可以使用 $_FILES["fieldname"]["size"] 然后检查:

      if($_FILES["fieldname"]["size"]>150000){ echo "too large"; exit;}
      

      【讨论】:

      • 虽然按照要求,这不是在上传过程之前。在您拒绝之前,他们可能已经等了很久才上传大文件,我认为这是 OP 想要阻止的。
      • 好点。但是,如果在客户端完成,服务器将不会收到有关文件大小的通知,因此无论如何都必须进行服务器端验证。也许这个 sn-p 对此有帮助:)
      【解决方案5】:

      认为实现任务的唯一方法是在提交之前通过 JS 进行验证。 看看这个Validation by JS

      【讨论】:

        猜你喜欢
        • 2011-03-13
        • 1970-01-01
        • 2011-05-14
        • 2011-12-05
        • 2012-04-26
        • 1970-01-01
        • 2012-05-19
        • 2011-02-19
        • 2016-06-17
        相关资源
        最近更新 更多