当前位置: 首页 > 图文教程 > 网络编程 > PHP > 利用discuz实现PHP大文件上传应用实例代码

PHP
PHP实例:用PHP简单实现多条件查询
PHP实例:用PHP实现多文件上载系统程序
PHP实例程序:用PHP制作登录页面程序
PHP实例:PHP取GB2312编码字符串首字母的方法
PHP实例:用PHP实现表单验证码登陆校验
Oracle与PHP实例开发Myers订单跟踪系统
PHP实例:email address 生成图片程序
PHP连接远程MYSQL和MYSQL5.1中文乱码处理方法
用 PHP 构建自定义搜索引擎
详细讲解PHP的Jmai组件及发送邮件实例
在动态网页技术PHP5中类(CLASS)的新特征
实例学习PHP如何实现在线发邮件
PHP上传文件的代码
不需要GD库的情况下实现验证码
PHP进阶教程:实现网站的无限分类
童虎:人人皆可做插件 Discuz! 插件开发实例讲解
创建论坛专业知识库 HDWiki(For Discuz!)V1.0正式版发布
PHP网站后门的隐藏技巧测试报告
加速PHP动态网站 MySQL索引分析和优化
php中rename()函数的妙用

利用discuz实现PHP大文件上传应用实例代码


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 45 ::
收藏到网摘: n/a

论坛的附件功能当初设计的初衷并不是为了文件管理,由于服务器配置,php,网络等多方面因素,使得通过论坛上传文件并不是一个好方案。

对于确实需要改善论坛附件上传条件的朋友可以尝试将上面提及的参数在php.ini进行设置,以适应大文件上传的需要。同时别忘记在论坛的后台相应做附件限制的地方进行设置。

论坛主要有2个地方可以对附件上传的大小进行限制,级别从高到低依次为:

  • 帖子相关---附件类型尺寸
  • 用户组---附件相关

同时,下面提供一个配置指导,来源一些成功通过http上传大附件的朋友的提供,当然,由于大家的服务器配置情况以及网络情况不同,并不一定适用你的情况,可能很多地方需要参照修改:

打开php.ini,


参数 设置 说明
file_uploads on 是否允许通过HTTP上传文件的开关。默认为ON即是开
upload_tmp_dir -- 文件上传至服务器上存储临时文件的地方,如果没指定就会用系统默认的临时文件夹
upload_max_filesize 8m 望文生意,即允许上传文件大小的最大值。默认为2M
post_max_size 8m 指通过表单POST给PHP的所能接收的最大值,包括表单里的所有值。默认为8M
说明
一般地,设置好上述四个参数后,在网络正常的情况下,上传<=8M的文件是不成问题
但如果要上传>8M的大体积文件,只设置上述四项还一定能行的通。除非你的网络真有100M/S的上传高速,否则你还得继续设置下面的参数。
max_execution_time 600 每个PHP页面运行的最大时间值(秒),默认30秒
max_input_time 600 每个PHP页面接收数据所需的最大时间,默认60秒
memory_limit 8m 每个PHP页面所吃掉的最大内存,默认8M


把上述参数修改后,在网络所允许的正常情况下,就可以上传大体积文件了

论坛文件上传常见错误类型(不断总结...)
  • Warning: Unable to open '\\php2' for reading: Invalid argument in e:\user\web\larksoft.net\upload\upfile.php on line 10

是php的upload_tmp_dir的原因,所指定的目录必须可读可写

  • Parse error: parse error in c:\program files\apache group\apache\htdocs\mdweb\ftpfile\upload.php on line 14

Parse error一般都是语句的问题,比如象“;”,“'”,“)”等等的匹配问题 。