无法在php上传图片,权限被拒绝?

时间:2010-08-11 06:15:07

标签: php file-upload

相同的脚本在localhost中工作正常但它在服务器中不起作用。它抛出了一些错误 -

Warning: copy(album/6349416.jpg) [function.copy]: failed to open stream: Permission denied in D:\Hosting\6448289\html\upload.php on line 112

相应的112行是 -

$image_name=$unq.'.'.$extension;
//the new name will be containing the full path where will be stored (album folder)
$newname="album/".$image_name;
$copied = copy($_FILES['image']['tmp_name'], $newname);  //112th line

3 个答案:

答案 0 :(得分:1)

$ newname应该是新文件的完整路径。但是在你的脚本中,它是一个相对路径,似乎指向/ tmp

内的某个地方

答案 1 :(得分:0)

检查相册文件夹的权限。它应该以6或7结尾(必须为每个人启用读取+写入权限)

答案 2 :(得分:0)

这可能是一个愚蠢的问题,但您使用的是Windows服务器吗?

您在"album/".$image_name中使用了正斜杠(unix-style),但错误位置显示为反斜杠(窗口样式)“D:\ Hosting \ 6448289 \ html \ upload.php”。是否仍然以反斜杠失败,即"album\".$image_name

编辑:我忘了添加 - 您可能需要在该位置前面的./.\来声明它相对于php脚本的当前位置