PHP上传大文件注意要点

1、_FILES-error错误码详情

/** 
    * 0:文件上传成功
    * 1:超过了文件大小,在php.ini文件中设置
    * 2:超过了文件的大小MAX_FILE_SIZE选项指定的值
    * 3:文件只有部分被上传
    * 4:没有文件被上传
    * 5:服务器临时文件夹丢失
    * 6:该文件被写入到临时文件夹错误
    */

2、注意要点及解决办法

switch(error_code){

case 0:

没得说,上传都成功了!

break;

case 1:

超出php.ini文件的配置,需要改的有这么几项:

file_uploads = On默认为on 允许HTTP文件上传

upload_max_filesize = 2M允许最大上传文件大小,默认为2M

post_max_size=8M允许POST的数据最大字节长度,默认为8M,必须要比upload_max_filesize大一点

memory_limit=128M如果启用了内存限制,上传页面的大小(包括你上传端午文件)要小于memory_limit

max_execution_time=30脚本最大允许执行时间,默认30秒,如果你的文件30秒还上不上去,那就改大点,0表示无限制

改完以后一定要重启Apache什么的

break;

case 2:

这个问题的解决方案是要在form表单中加这么一句:

<input type="hidden" name ="max_file_size" value="53477376"/>
<!-- value 的大小就是你最大支持上传文件的大小 要小于(或等于)配置文件中的upload_max_filesize的大小 -->

注意要点:

此语句一定要放在上传控件的下面:如下

<input type="file" name="original_up" id="original_up" accept=".zip,.rar"/>
<input type="hidden" name ="max_file_size" value="53477376"/>

当然了,提交是必不可少的:

<input type="submit" id="audit" name="audit" value="提交"/>

break;

case 3:

只上传了一部分,刨除网络原因外,基本上就是配置文件中的这个max_execution_time有点小,设大点就好了

break;

case 4:

无上传文件嘛,没选要上传的文件就提交了。。。这是有多么捉急啊

break;

case 5:

服务器的临时文件夹没配置,在配置文件中找upload_tmp_dir,配置上基本就可以了,一般来说是默认不用配置的,有时候到了英文服务器下是需要配的

break;

case 6:

一般来说都是配置的那个上传的临时文件无读写权限造成的,改改就好了

break;

}

解决完这些,基本都能上传成功了,注意上传路径的读写权限。假如还不成功,在这个看脸的时代,替你默哀了!




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值