报错信息:

Warning: move_uploaded_file(upload/test.png) [function.move-uploaded-file]: failed to open stream: No such file or directory in php_upload/upload_file.php on line 33

Warning: move_uploaded_file() [function.move-uploaded-file]: Unable to move ‘D\php\www\tmp\php80.tmp’ to ‘upload/test.png’ in php_upload/upload_file.php on line 33
Stored in: upload/test.png

原因分析:

在php菜鸟教程copy php文件上传代码时,发现move_uploaded_file(A,B)方法报错,此方法为了将临时存储的file,移动到你想存储的文件/目录中。
报错意为:第二个input参数,不存在该文件或目录。
1、你没创这个upload文件/目录(我这里命名为upload)。
2、路径写的菜鸟教程上的相对路径。

解决方案:

1、linux环境下先保证upload文件/目录存在,然后将该文件的权限改为777。修改文件权限(文件所有者r+w+x,和文件所有者同一个组群r+w+x,其他用户r+w+x)命令为:chmod 777 upload【因不是linux系统,此方法需试】
2、windows下先保证upload文件/目录存在,然后将第二个输入参数 改为绝对路径!!!(亲测有效)

move_uploaded_file($_FILES["file"]["tmp_name"],"D:/php/www/workspace/upload/".$_FILES["file"]["name"]);

更多推荐

解决php上传文件过程中Warning move_uploaded_file, failed to open stream的解决方案