Jump to content

Upload not uploading all pic types


graham23s

Recommended Posts

Hi Guys,

 

i'm having trouble with my completed upload code

 

<?php      
  $photo1 = $_FILES["image1"]["name"];
  $username = mysql_real_escape_string($_POST["username"]);
  $max_image_size = 512000; 
  $allowed = array("image/gif","image/jpg","image/x-png","image/jpeg");
  $max_image_width = 500;
  $max_image_height = 450;
  $random_number = rand(000000,999999);
  
   // Query for a previous photo...///////////////////////////////////////////////////////
   $result = mysql_query("SELECT photo1 FROM membership WHERE username='".$username."' LIMIT 1");
   $row = mysql_fetch_object($result);
   $photo_to_delete = $row->photo1;
     unlink("uploads/".$photo_to_delete); 
  
  // The renamed photo...////////////////////////////////////////////////////////////////
  $renamed_photo = $random_number.".".substr($_FILES["image1"]["name"],strlen($_FILES["image1"]["name"])-3,3); 
  
  // Check there wasn't a blank submission...////////////////////////////////////////////
  if(empty($_FILES["image1"]["name"])) {
  
       echo "<p>Sorry, But No File Was Selected, Please Go Back And Try Again.</p>";
       exit;  
  }
  
  // Validation for Image...
  if ($_FILES["image1"]["size"] > $max_image_size) {
  
   echo "<p>Sorry <b>$username</b> That Image Is Bigger Than The Allowed Size Of 3mb Please <a href=\"java script: history.go(-1)\">Go Back</a></p>";
   exit;
   
  }
  
  #####################################################################
  // Validate image dimensions...////////////////////////////////////////////////////////
  $dim = getimagesize($_FILES["image1"]["tmp_name"]);

  if($dim[0] >= $max_image_width || $dim[1] >= $max_image_height) {
  
    echo "<p>Sorry, That Image Isn't Within The Current Upload Dimensions Please Go Back And Upload Another!</p>";
    exit;
    
  }  
  // Validate image types.../////////////////////////////////////////////////////////////
  if (in_array($_FILES["image1"]["type"], $allowed)) {
  
    echo "<p>Sorry, That File Isn't One Of The Allowed File Types Only <b>.jpg</b> Are Allowed.</p>";
    exit;
    
  }  
  #####################################################################
  
  $uploadpath = "uploads/"; // <- Upload folder...
  $uploadpath = $uploadpath.$renamed_photo;

  #####################################################################  
  if (!move_uploaded_file($_FILES["image1"]["tmp_name"], $uploadpath)) 
  
     die("<p>Sorry, There Was An Error Uploading Your Image!");
     echo "<p><br />The Image (<b><font color=\"red\">" .$_FILES["image1"]["name"]. "</b></font>) Has Been Uploaded Successfully!<br />";
     echo '<br /><p>Please Wait To Be Re-Directed...</p>'; 
 echo "<meta http-equiv=\"refresh\" content=\"3;URL=javascript: history.go(-1)\">";
     
    
  // Create our query.../////////////////////////////////////////////////////////////////
  $sql = "UPDATE membership SET photo1='$renamed_photo' WHERE username='$username'";

  // Run our query...////////////////////////////////////////////////////////////////////
  $rs = mysql_query($sql, $conn) or die(mysql_error());
?>]

 

the problem is this code uploads SOME .jpg's and doesn't others , and also doesn't upoad .gif's, But if i change this:

 

if (in_array($_FILES["image1"]["type"], $allowed)) {

 

to this:

 

if (!in_array($_FILES["image1"]["type"], $allowed)) {

 

it uploads gif but not .jpgs

 

im totally stumped any help would be great

 

Graham

Link to comment
https://forums.phpfreaks.com/topic/50384-upload-not-uploading-all-pic-types/
Share on other sites

firstly PLease Dont Post UNNECESSARY CODES

You should use

if (!in_array($_FILES["image1"]["type"], $allowed))  here

qand try using

if (in_array($_FILES["image1"]["type"], $allowed)) {

    echo $_FILES["image1"]["type"]."\n<br />";

    echo "<p>Sorry, That File Isn't One Of The Allowed File Types Only <b>.jpg</b> Are Allowed.</p>";

    exit;

   

  } 

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.