如何理解文件大小超过FILE_MAX_SIZE并发送错误?

时间:2015-07-10 11:42:01

标签: php

在我的表单中,我使用了两个文件输入并为每个文件设置了MAX_FILE_SIZE,当我提交的文件大于MAX_FILE_SIZE时,它没有做任何事情。我如何处理这个并报告用户的文件大于最大大小? 我可以用一个php上传类来做,但当我使用MAX_FILE_SIZE它不起作用或mybe这个类根本没有被调用。

<div class="form-group">
                        <label for="comp_file">فایل فشرده : </label>
                       <input type="hidden" name="MAX_FILE_SIZE" value="<?php echo $max_zipfile_size; ?>" >
                       <input type="file" name='comp_file' class="form-control" id="comp_file">
                       <p class="help-block">فایل قابل دانلود را انتخاب کنبد. 
                       فایل باید در حالتد فشرده قرار داشت باشد.</p>
                    </div>

                    <div class="form-group">
                        <label for="file_image">عکس مربوط به مقاله : </label>
                       <input type="hidden" name="MAX_FILE_SIZE" value="<?php echo $max_image_size; ?>" >
                       <input type="file" name='file_image' class="form-control" id="file_image">
                       <p class="help-block">در صورتی که عکسی مناسب با مقاله در اختیار دارید ارسال کنید.</p>
                    </div>

2 个答案:

答案 0 :(得分:0)

if ($_FILES["comp_file"]["size"] > 1024 * 1024 * 8){ //8mo, adjust as you need exit("File too big"); } 用于浏览器的客户端。因此,你不能相信它。

当你获得PHP大小的文件时,手动控制它的大小:

exit

很明显,这try: q = Voterlist.objects.get(Q(voter=request.user),Q(verse=verse)) except (VoterList.DoesNotExist, VoterList.MultipleObjectsReturned): # do something pass 有点苛刻。适应你需要的东西。

答案 1 :(得分:0)

使用java脚本向用户验证上传文件大小的最大值,如果文件大小大于最大文件大小,则向用户发出警告并停止提交操作。 或者您可以检查服务器大小的文件大小,并使用php本身向用户填充警告消息。