设置图像上传大小

时间:2015-07-28 07:57:44

标签: php jquery html codeigniter

我试图使用以下jQuery代码将上传文件大小限制为1MB:

<td><label> Upload image </label>
  <input type="file" class="upload" name="image" value="<?php echo set_value('image'); ?>" /> 

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
  <script type="text/javascript">
    $(document).on('change','.upload',function(){
      files = this.files;
      size = files[0].size;
        //max size 50kb => 50*1000
      if( size > 1000141) {
        alert('Please upload less than 1mb file');
        return false;
      }
      return true;
    });
</script>

当我上传大于1MB的文件时,它会显示错误消息,但上传会成功完成。造成这种情况的原因是什么?

1 个答案:

答案 0 :(得分:0)

您可以使用隐藏字段设置最大尺寸。

  <input type="hidden" name="MAX_FILE_SIZE" value="30000" />

该字段必须位于input type = file之前。 但要小心,它很容易绕过MAX_FILE_SIZE。 您还应该使用php检查文件大小。

$size= $_FILES["myfile"]["size"];
if($size > 1000141) 
{
 //dont upload file
}
else {
 //upload file
}