When try to upload a image file, hosting server makes warning sometimes. If i try uploading the same file in succeeding tries the image will be uploaded.
Warning:
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]
File Upload
if ( is_uploaded_file($file_temp) ) {
if (move_uploaded_file($file_temp, $destination . $filename . '.' . $extension)) {
$error = "SUCCESS";
return $error;
} else {
$error = "ERROR";
return $error;
}
}
Here when warning comes 'ERROR' in else portion is also returned with warning...
How I can correct it ?
It is working nice in local server...
您的脚本可能没有写入目标目录的权限。
So is APP/controllers/components/files/photos/3.jpg
where you want to save your uploads? If so then its a permissions problem.
Or do you mean: WEB_ROOT/files/photos/3.jpg
if so you need to change your code too:
if ( is_uploaded_file($file_temp) ) {
if (move_uploaded_file($file_temp, '/'.$destination.$filename.'.'.$extension)) {
$error = "SUCCESS";
return $error;
} else {
$error = "ERROR";
return $error;
}
}
notice the forward slash '/'.$destination
Check the CHMOD on the directory and on the file. Usually PHP is ran like root , but you can still forbid it's access with CHMOD.
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.