在我的表单中,我使用了两个文件输入并为每个文件设置了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>
答案 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本身向用户填充警告消息。