Hi all,
I just upgraded my server into PHP 5. I run the same script which is
working in 4.2.2.
But In PHP 5 has followings msg:
Warning: move_uploaded_file(upload_files/Gnatt.htm)
denied in /var/www/html/simple_upload.php on line 60
Warning: move_uploaded_file() function.move-uploaded-file: Unable to
move '/tmp/phpZ29DAN' to 'upload_files/Gnatt.htm' in
/var/www/html/simple_upload.php on line 60
I am 100% sure , I have changed the upload_files dir into 0777 mod.
Any one can help?
yours,
Michael Leung
===========================================
My testing Code
$site_name = $SERVER['HTTP_HOST'];
$url_dir = "http://".$SERVER['HTTP_HOST'].dirname($SERVER['PHP_SELF']);
$url_this = "http://".$SERVER['HTTP_HOST'].$_SERVER['PHP_SELF'];
$upload_dir = 'upload_files/';
$upload_url = $url_dir."upload/";
$message ="";
if (is_dir('upload_files')) {
echo ('upload_files is valid a directory');
} else {
echo ('upload_files is NOT a directory');
}
if (is_writeable('upload_files')) {
echo ('I am able to write to upload_files');
} else {
echo ('I am NOT able to write to upload_files');
}
if ($_FILES['userfile']) {
$message = do_upload($upload_dir, $upload_url);
}
else {
$message = "Invalid File Specified.";
}
print $message;
function do_upload($upload_dir, $upload_url) {
$temp_name = $FILES['userfile']['tmp_name'];
$file_name = $FILES['userfile']['name'];
$file_type = $FILES['userfile']['type'];
$file_size = $FILES['userfile']['size'];
$result = $_FILES['userfile']['error'];
$file_url = $upload_url.$file_name;
$file_path = $upload_dir.$file_name;
//File Name Check
if ( $file_name =="") {
$message = "Invalid File Name Specified";
return $message;
}
//File Size Check
else if ( $file_size > 500000) {
$message = "The file size is over 500K.";
return $message;
}
//File Type Check
else if ( $file_type == "text/plain" ) {
$message = "Sorry, You cannot upload any script file" ;
return $message;
}
$result = move_uploaded_file($temp_name, $file_path);
$message = ($result)?"File url <a href=$file_url>$file_url</a>" :
"Somthing is wrong with uploading a file.";
return $message;
}
?>
<form name="upload" id="upload" ENCTYPE="multipart/form-data" method="post">
Upload Image<input type="file" id="userfile" name="userfile">
<input type="submit" name="upload" value="Upload">
</form>