相同的脚本在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
答案 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脚本的当前位置