Jump to content

add multiple image fileds..


techker

Recommended Posts

Hey guys i have this image uploader and resize script..it currently only uploads one image..i would like to mod it to upload 3 images..

 

here is the original code and below it is what i think to change

<!doctype html public "-//w3c//dtd html 4.01 transitional//en">
<html>
<head>
<title></title>
<?php


//load the config file
include("config.php");

//if the for has submittedd
if (isset($_POST['upForm'])){

       $file_type = $_FILES['imgfile']['type'];
       $file_name = $_FILES['imgfile']['name'];
       $file_size = $_FILES['imgfile']['size'];
       $file_tmp = $_FILES['imgfile']['tmp_name'];
   $Box = $_POST['Box'];
   $CAR_ID = $_GET['ID'];

       //check if you have selected a file.
       if(!is_uploaded_file($file_tmp)){
          echo "Error: Please select a file to upload!. <br>--<a href=\"$_SERVER[php_SELF]\">back</a>";
          exit(); //exit the script and don't do anything else.
       }
       //check file extension
       $ext = strrchr($file_name,'.');
       $ext = strtolower($ext);
       if (($extlimit == "yes") && (!in_array($ext,$limitedext))) {
          echo "Wrong file extension.  <br>--<a href=\"$_SERVER[php_SELF]\">back</a>";
          exit();
       }
       //get the file extension.
       $getExt = explode ('.', $file_name);
       $file_ext = $getExt[count($getExt)-1];

       //create a random file name
       $rand_name = md5(time());
       $rand_name= rand(0,999999999);
       //get the new width variable.
       $ThumbWidth = $img_thumb_width;

       //keep image type
       if($file_size){
          if($file_type == "image/pjpeg" || $file_type == "image/jpeg"){
               $new_img = imagecreatefromjpeg($file_tmp);
           }elseif($file_type == "image/x-png" || $file_type == "image/png"){
               $new_img = imagecreatefrompng($file_tmp);
           }elseif($file_type == "image/gif"){
               $new_img = imagecreatefromgif($file_tmp);
           }
           //list width and height and keep height ratio.
           list($width, $height) = getimagesize($file_tmp);
           $imgratio=$width/$height;
           if ($imgratio>1){
              $newwidth = $ThumbWidth;
              $newheight = $ThumbWidth/$imgratio;
           }else{
                 $newheight = $ThumbWidth;
                 $newwidth = $ThumbWidth*$imgratio;
           }
           //function for resize image.
           if (function_exists(imagecreatetruecolor)){
           $resized_img = imagecreatetruecolor($newwidth,$newheight);
           }else{
                 die("Error: Please make sure you have GD library ver 2+");
           }
           imagecopyresized($resized_img, $new_img, 0, 0, 0, 0, $newwidth, $newheight, $width, $height);
           //save image
           ImageJpeg ($resized_img,"$path_thumbs/$rand_name.$file_ext");
           ImageDestroy ($resized_img);
           ImageDestroy ($new_img);
           //print message
           echo "<br>Image Thumb: <a href=\"$path_thumbs/$rand_name.$file_ext\">$path_thumbs/$rand_name.$file_ext</a>";
        }

        //upload the big image
        move_uploaded_file ($file_tmp, "$path_big/$rand_name.$file_ext");

        echo "<br>Image Big: <a href=\"$path_big/$rand_name.$file_ext\">$path_big/$rand_name.$file_ext</a>";

        echo "<br><br>--<a href=\"$_SERVER[php_SELF]\">back</a>";

}
///////////////////////////insert part added 
mysql_connect("localhost", "techker_techker", "techker") or die(mysql_error()) ;
mysql_select_db("techker_iapps") or die(mysql_error()) ;


$DateHeure= date("Y-m-d H:i:s");

$query = "INSERT INTO AddOnImages ( CAR_ID, Box , Name, date  )  
VALUES ( NULL,'$CAR_ID','$Box','$rand_name.$file_ext','$DateHeure')" ;
mysql_query($query) or die('Error, add album failed : ' . mysql_error());

//$id= mysql_insert_id();
    		//echo "<p>This file has the following Database ID: <b>$id</b>";
echo "You'll be redirected to Home Page after (4) Seconds";
          echo "<meta http-equiv=Refresh content=4;url=ViewPost.php?ID=>";





//
echo"
</body>
</html>";

?>

 

 

SO for shure in the form i need to add 2 more image  file fields.called the imagefile2,imagefile3.since the first one is called imagefile.

 

them im almost shure i need to add this

$file_type3 = $_FILES['imgfile2']['type'];

      $file_name2 = $_FILES['imgfile2']['name'];

      $file_size2 = $_FILES['imgfile2']['size'];

      $file_tmp2 = $_FILES['imgfile2']['tmp_name'];

 

  $file_type 3= $_FILES['imgfile3']['type'];

      $file_name 3= $_FILES['imgfile3']['name'];

      $file_size 3= $_FILES['imgfile3']['size'];

      $file_tmp3 = $_FILES['imgfile3']['tmp_name'];

 

 

To get the other images.

 

Afther:

  $ext = strrchr($file_name,'.');

to

 

$ext = strrchr($file_name,$file_name2,$file_name3,'.');

 

and

$getExt = explode ('.', $file_name);

 

to

 

$getExt = explode ('.', $file_name,$file_name2,$file_name3);

 

Afther im lost...is this good up to know?

Link to comment
Share on other sites

nice thx!!

 

its all good but the thumbs dont work?

 

<?php
function resize($img, $thumb_width, $newfilename)
{  
$max_width=$thumb_width;    //Check if GD extension is loaded    
if (!extension_loaded('gd') && !extension_loaded('gd2'))     {      
trigger_error("GD is not loaded", E_USER_WARNING);      
return false;   
}
//Get Image size info    
list($width_orig, $height_orig, $image_type) = getimagesize($img);        
switch ($image_type)   
{        
case 1:$im = imagecreatefromgif($img);break;       
case 2: $im = imagecreatefromjpeg($img); break;        
case 3:$im = imagecreatefrompng($img); break;        
default:  trigger_error('Unsupported filetype!', E_USER_WARNING); break;  
}    

/*** calculate the aspect ratio ***/   
$aspect_ratio = (float) $height_orig / $width_orig;   
/*** calculate the thumbnail width based on the height ***/    
$thumb_height = round($thumb_width * $aspect_ratio);

while($thumb_height>$max_width)   
{        
$thumb_width-=10;       
$thumb_height = round($thumb_width * $aspect_ratio);   
}       
$newImg = imagecreatetruecolor($thumb_width, $thumb_height);

/* Check if this image is PNG or GIF, then set if Transparent*/      
if(($image_type == 1) OR ($image_type==3))   
{        
imagealphablending($newImg, false);        
imagesavealpha($newImg,true);        
$transparent = imagecolorallocatealpha($newImg, 255, 255, 255, 127);        
imagefilledrectangle($newImg, 0, 0, $thumb_width, $thumb_height, $transparent);   
}  
imagecopyresampled($newImg, $im, 0, 0, 0, 0, $thumb_width, $thumb_height, $width_orig, $height_orig);

//Generate the file, and rename it to $newfilename    
switch ($image_type)     
{       
case 1: imagegif($newImg,$newfilename); break;        
case 2: imagejpeg($newImg,$newfilename);  break;       
case 3: imagepng($newImg,$newfilename); break;        
default:  trigger_error('Failed resize image!', E_USER_WARNING);  break;    
}    
return $newfilename;
}

//This stuff is outside of the function. It operates with our images    
if(isset($_POST[submit])){    
$imgNumb=1; //This the "pointer" to images     
$DestinationDir="upimg/";  //Place the destination dir here    
$ThumbDir="upimg/thumbs";  //Place the thumb dir here      
do{             
$Unique=microtime(); // We want unique names, right?             
$destination=$DestinationDir.md5($Unique).".jpg";             
$thumb=$ThumbDir.md5($Unique).".jpg";              
$IMG=getimagesize($_FILES["img$imgNumb"][tmp_name]);            
echo resize($_FILES["img$imgNumb"][tmp_name], $IMG[0], $destination);          
$imgNumb++;        
}
while($_FILES["img$imgNumb"][name]);    }?>






<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>

<body>
<form action="" method="post" enctype="multipart/form-data" >
<input type="file" name="img1"/>
<input type="file" name="img2"/>
<input type="file" name="img3"/>
<input type="submit" name="submit" value="Submit"/>
</form>
</body>
</html>

Link to comment
Share on other sites

This thread is more than a year old. Please don't revive it unless you have something important to add.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • 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.