Page 1 of 1

Help Please

Posted: Sun Aug 28, 2011 8:10 am
by Jack_Rocker
Okay so I made this image uploader code, but if I dont select a file and just click upload it doesnt come up with an error! How can I make it do that?

Code: Select all

<?php
 define ("MAX_SIZE","100"); //kb
 
 function getExtension($str) {
         $i = strrpos($str,".");
         if (!$i) { return ""; }
         $l = strlen($str) - $i;
         $ext = substr($str,$i+1,$l);
         return $ext;
 }

 $errors=0;

 if(isset($_POST['Submit'])) 
 {
 	$image=$_FILES['image']['name'];
 	if ($image) 
 	{
 		$filename = stripslashes($_FILES['image']['name']);
 		$extension = getExtension($filename);
 		$extension = strtolower($extension);
 	 if (($extension != "jpg") && ($extension != "jpeg") && ($extension != "png") && ($extension != "gif") && ($extension != "txt")) 
 		{
 			echo '<h1>Unknown extension!</h1>';
 			$errors=1;
 		}
 		else
 		{
 $size=filesize($_FILES['image']['tmp_name']);

if ($size > MAX_SIZE*1024)
{
	echo '<h1>You have exceeded the size limit!</h1>';
	$errors=1;
}

$image_name=time().'.'.$extension;
$newname= $image_name;
$copied = copy($_FILES['image']['tmp_name'], $newname);
if (!$copied) 
{
	echo '<h1>Copy unsuccessfull!</h1>';
	$errors=1;
}
else {
		echo "Your file was uploaded. It can be found at: http://www.site.net/images/" . $image_name;
}
}}}

 ?>
 <form name="newad" method="post" enctype="multipart/form-data"  action="">
 <table>
 	<tr><td><input type="file" name="image"></td></tr>
 	<tr><td><input name="Submit" type="submit" value="Upload Image/Text"></td></tr>
 </table>
</form>

Re: Help Please

Posted: Sun Aug 28, 2011 11:31 am
by Jack_Rocker
bump

Re: Help Please

Posted: Sun Aug 28, 2011 11:57 am
by phazorRise
try-

Code: Select all

if((!empty($_FILES["image"])) && ($_FILES['image']['error'] == 0)) {
   //do your stuff
}else {
 echo 'Error';
}

Re: Help Please

Posted: Sun Aug 28, 2011 12:26 pm
by social_experiment

Code: Select all

<?php
if ($_FILES['file']['name'] != '') {
 // your code
}
else {
 // error code
}
?>