【问题标题】:Size limit for file upload文件上传大小限制
【发布时间】:2016-05-13 19:11:16
【问题描述】:

我调查了使用 html5 上传文件的问题,并且我有一个理论上的问题:html5 对上传的文件大小有任何限制吗? 例如,我可以上传大小约为 500Gb 的文件吗?

P.S.:我使用 FileReader api 来读取文件。

好的。此问题已解决。

但正如它在 FileReader API 中解释的那样:

该接口提供了将 File 对象或 Blob 对象读入内存的方法...

正如我正确理解的那样,我无法读取大小超过可用 RAM 的文件?

【问题讨论】:

  • @pawel 我也看到了,并打算将其标记为重复,但由于它没有得到答案,因此不允许这样做。无法投票,这是一个耻辱的答案

标签: javascript html


【解决方案1】:

不,没有大小上传限制。

here is the spec 这里有一个关于如何check the file size 的相关问题,以便您可以根据需要添加限制。

值得指出的是,如果您希望将文件存储在服务器上,您可能会遇到文件上传限制/限制。但是您应该能够配置它们。即 php/wordpress 默认上传限制

【讨论】:

  • 我能再问一个问题:我们可以部分读取文件吗?如果我们有大小为 300Gb 的文件,是否可以将其读入内存?
  • 部分,你的意思是,读取文件的一部分(比如一半),还是一次性读取文件而不是一次性读取?我对规范的理解(尽管我可能错了)是文件 is 以块的形式读取。不确定 回复:内存。我知道浏览器存储限制小于可用内存,但这就是我的限制
  • 是的,我的意思是读取文件,例如 10Mb ...解决方案,为这么大的文件上传文件
【解决方案2】:

希望这有用..

表单、验证脚本:

<form action="check.php" method="post" enctype="multipart/form-data">
<label>Upload An Image</label>
<input type="file" id="file_upload" name="file_upload" />
<input type="submit" onClick="return validate()" name="upload"/>
</form>

<script>
function validate(){
var size=2097152;
var file_size=document.getElementById('file_upload').files[0].size;
if(file_size>=size){
    alert('File too large');
    return false;
}
var type='image/jpeg';
var file_type=document.getElementById('file_upload').files[0].type;
if(file_type!=type){
    alert('Format not supported,Only .jpeg images are accepted');
    return false;
}
}

用于上传的php:

 <?php 
        if(isset($_POST['upload'])){

                $target_dir = "uploads/";
                $target_file = $target_dir . basename($_FILES["file_upload"]["name"]);
                if(move_uploaded_file($_FILES["file_upload"]["tmp_name"], $target_file)){ 
                echo "The file ". basename( $_FILES["file_upload"]["name"]). " has been uploaded.";
                }
                else{
                    echo "sorry";
                    }

        }
    ?>

【讨论】:

    猜你喜欢
    • 2011-01-29
    • 2017-03-09
    • 2011-01-13
    • 1970-01-01
    • 2022-10-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多