这两天搞了下php建视频网站,主要参照》进行部署,结果adobe flex builder和eclipse下载安装了半天,以后有空再研究flex的用法吧。
其中用到php的视频文件上传和转换功能,结果文件上传老不成功,由于没有php和mysql基础,找了半天也不知原因,发现小文件(100k)以内都没问题,但10几兆的文件连文件信息都获取不了。
找了半天原因,原来是在php.ini的配置文件中。我用的ubuntu 8.10,php.ini是在/etc/php5/apache2/php.ini。里面有几限定文件大小的参数需要修改,这要感谢网上文章
这里摘录部分以做备忘:
1、php文件上传的错误代码意思
$_FILES['myFile']['error'] 和该文件上传相关的错误代码。['error'] 是在 PHP 4.2.0 版本中增加的。下面是它的说明:(它们在PHP3.0以后成了常量)
UPLOAD_ERR_OK
值:0; 没有错误发生,文件上传成功。
UPLOAD_ERR_INI_SIZE
值:1; 上传的文件超过了 php.ini 中 upload_max_filesize 选项限制的值。
UPLOAD_ERR_FORM_SIZE
值:2; 上传文件的大小超过了 HTML 表单中 MAX_FILE_SIZE 选项指定的值。
UPLOAD_ERR_PARTIAL
值:3; 文件只有部分被上传。
UPLOAD_ERR_NO_FILE
值:4; 没有文件被上传。
值:5; 上传文件大小为0.
文件被上传结束后,默认地被存储在了临时目录中,这时您必须将它从临时目录中删除或移动到其它地方,如果没有,则会被删除。也就是不管是否上传成功,脚本执
行完后临时目录里的文件肯定会被删除。所以在删除之前要用PHP的 copy() 函数将它复制到其它位置,此时,才算完成了我们的上传文件过程。(我使用move_uploaded_file()函数来进行复制)。
2、注意事项
1.对 MAX_FILE_SIZE 设置的值,不能大于 ini 设置中 upload_max_filesize 选项设置的值。其默认值为 2M 字节。
2.如果 max_execution_time 设置的值太小,脚本运行的时间可能会超过该设置。也就是文件还未上传成功已经到了结束时间。因此,请保证 max_execution_time 足够的大。
3.如果内存限制设置被激活,您可能需要将 memory_limit 设置的更大些,所以也请确认 memory_limit 的设置足够的大。
4.如果 post_max_size 设置的值太小,则较大的文件会无法被上传。因此,请保证 post_max_size 的值足够的大。
5.不能保证文件名有空格的文件被正确上传。
基本PHP文件上传处理也可参照《》
阅读(2180) | 评论(1) | 转发(0) |