[英]File upload issue in host server
当尝试上传图像文件时,托管服务器有时会发出警告。 如果我尝试在后续尝试中上传相同的文件,则会上传图像。
警告:
Warning (2): move_uploaded_file(files/photos/3.jpg) [http://php.net/function.move-uploaded-file]: failed to open stream: Permission denied [APP/controllers/components/file_upload.php, line 55]
Warning (2): move_uploaded_file() [http://php.net/function.move-uploaded-file]: Unable to move '/tmp/phpUutr9Z' to 'files/photos/3.jpg' [APP/controllers/components/file_upload.php, line 55]
上传文件
if ( is_uploaded_file($file_temp) ) {
if (move_uploaded_file($file_temp, $destination . $filename . '.' . $extension)) {
$error = "SUCCESS";
return $error;
} else {
$error = "ERROR";
return $error;
}
}
这里当警告到来时,其他部分的'ERROR'也会返回警告......
我怎么纠正它?
它在本地服务器上工作得很好......
您的脚本可能没有写入目标目录的权限。
APP/controllers/components/files/photos/3.jpg
在哪里可以保存上传内容? 如果是这样那么它的权限问题。
或者你的意思是: WEB_ROOT/files/photos/3.jpg
如果是这样你也需要改变你的代码:
if ( is_uploaded_file($file_temp) ) {
if (move_uploaded_file($file_temp, '/'.$destination.$filename.'.'.$extension)) {
$error = "SUCCESS";
return $error;
} else {
$error = "ERROR";
return $error;
}
}
注意正斜杠'/'.$destination
检查目录和文件上的CHMOD 。 通常PHP像root一样运行,但你仍然可以禁止它使用CHMOD进行访问。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.