Hello,
PHP file upload script.
Problem: Unable to upload file under ubuntu server.
I have 2 different webservers setup:
1. xampp on usb and my problametic script works.
2. ubuntu server, exact same php script but it wont upload the file.
What i noticed with xampp: <--works
echo "<br>tempFile=>:-". $_FILES['data']['tmp_name'][$x] . "<br>";
result: tempFile=>:-G:\xampp\tmp\php2D.tmp
print_r($imagearray);
Array ( [0] => Array ( [1] => G:\xampp\tmp\php2D.tmp [2] => 1357153942_robinuser_dog.jpg ) )
What i noticed with Ubuntu server:
echo "<br>tempFile=>:-". $_FILES['data']['tmp_name'][$x] . "<br>";
tempFile=>:/tmp/phpzN6e8U <-- looks like the "tmp" extention is missing.
print_r($imagearray);
Array ( [0] => Array ( [1] => /tmp/phpzN6e8U [2] => 1357153182_robinuser_bird.jpg ) )
if the temp file ext is missing how do I fix this??
Any help you can provide would be greatly appreciated
if(isset($_POST['action'])=='uploadfiles')
{ for($x=0; $x<count($allowedUpload); $x++)
{ echo "<br>tempFile=>:-". $_FILES['data']['tmp_name'][$x] . "<br>";
if(!empty($_FILES['data']['name'][$x]))
{ $extension = end(explode(".", $_FILES['data']['name'][$x]));
if ((($_FILES["data"]["type"][$x] == "image/gif")
|| ($_FILES["data"]["type"][$x] == "image/jpeg")
|| ($_FILES["data"]["type"][$x] == "image/png")
|| ($_FILES["data"]["type"][$x] == "image/pjpeg"))
&& ($_FILES["data"]["size"][$x] < $fileSize)
&& in_array($extension, $allowedExts))
{ if ($_FILES["data"]["error"][$x] > 0)
{ echo "Error: " . $_FILES["data"]["error"][$x] . "<br>"; }
else
{ //Sanitize the filename
$sanitizedName = str_replace($remove_these, '', $_FILES['data']['name'][$x]);
$newImageName = time()."_".$imageUserId."_".$sanitizedName;
//move_uploaded_file($_FILES['data']['tmp_name'][$x], $upload_directory . $newImageName);
if(!empty($newImageName))
{ $imagearray[$x][1] = $_FILES['data']['tmp_name'][$x];
$imagearray[$x][2] = $newImageName;
}
}
}
else
{ echo "Invalid file: ".$_FILES["data"]["name"][$x]; }
}// end of IF- if(!empty($_FILES['data']['name'][$x]))
} // endo for loop
print_r($imagearray);
for($y=0; $y< count($imagearray); $y++)
{ move_uploaded_file($imagearray[$y][1], $upload_directory . $imagearray[$y][2]);
echo $imagearray[$y][1] . " " .$upload_directory . $imagearray[$y][2]."<br>";
}
} // end of upload button