Image Upload
I have written a code for image upload this works fine on windows machine, but when i upload it to my online server which is hosted on linux machine file is not uploaded. I am not able to find the problem.
I have given the write permission to all to that folder, but still not working.
<?php
function upload_form()
{
?>
<table border="1" align="center">
<tr><td>
<form method="post" enctype="multipart/form-data" action="<? echo $_SERVER['PHP_SELF']; ?>">
Upload File!
<input type="file" name="userfile">
<input type="submit" name="action" value="upload">
</form>
</td></tr>
</table>
<?php
}
function upload_file() {
$archive_dir="http://domain_name/images/booksimage/thumb";
$userfile_name=$_FILES['userfile']['name'];
$userfile_tmp_name=$_FILES['userfile']['tmp_name'];
$userfile_size=$_FILES['userfile']['size'];
$userfile_type=$_FILES['userfile']['type'];
$image_types = Array ("image/bmp",
"image/jpeg",
"image/pjpeg",
"image/gif",
"image/x-png");
if (!in_array (strtolower ($userfile_type), $image_types))
die("File type is not image");
$filename=basename($userfile_name);
if($userfile_size <= 0)
die("$filename is empty.");
if(!@move_uploaded_file($userfile_tmp_name, "$archive_dir/$filename"))
die("Can't copy $userfile_name to $filename. $userfile_tmp_name");
if(isset($_ENV['WINDIR']) && !@unlink($userfile))
die("Can't delete the file $userfile_name");
echo "$filename has been successfully uploaded.<br>";
echo "Filesize : " . number_format($userfile_size) . "<br>";
echo "Filetype : $userfile_type<br>";
}
?>
<?php
if($_POST['action'] =='upload')
{
upload_file();
}else{
upload_form();
}?>
Satya Prakash
|