PHP - move_uploaded_file不适用于音乐/视频

Mik*_*ike 0 php upload file function

我正在处理上传脚本并使用move_uploaded_file()函数.问题是,它只适用于.txt,.jpg,.psd和我尝试​​过的其他一些文件类型,但不适用于.mp3,.mov,.avi和其他文件类型.

脚本没什么,只是功能.有趣的是,它没有显示任何错误消息,它只是不上传文件.

有没有人有这个问题的经验?

谢谢,迈克.

Pek*_*ica 6

我认为这实际上不是文件类型,更多是文件大小.

创建一个运行a <? phpinfo(); ?>并查找upload_max_filesize设置的PHP脚本.它可能是8 MB,导致所有较大的文件上传失败.

如果是这种情况,您可以尝试使用ini_set("upload_max_filesize", "3200000000");例如更改设置.在大多数情况下,如果在共享主机软件包上,那可能不会起作用.您可能需要联系您的托管服务提供商.

您还应该使您的脚本抛出可靠的错误消息.上传文件太大的尝试通常在上传文件时显示为错误.检查手册中的错误消息说明章节,了解相应的错误代码及其含义.

  • @Mike Strange.php.ini中还有另一个选项来检查:`post_max_size`,请参阅http://de.php.net/manual/en/ini.core.php#ini.post-max-size如果更改没有帮助(不要忘记重新启动服务器),然后你必须检查`$ _FILES [xyz] ["error"]`包含什么.在接收脚本中尝试`print_r($ _ FILES);`,看看错误代码是什么.将它与我在答案中链接的列表进行比较.我现在称它为一天,祝你好运! (3认同)
  • @Mike你能再次检查`phpinfo()`是否值已经改变了?如果没有,你在错误的`php.ini`中进行了更改.检查phpinfo()输出以查看使用了哪个php.ini(它位于顶部.)在wamp安装中,通常在Windows目录中至少有2个 - 一个在php二进制目录中. (2认同)