Jump to content

Two image upload stumbling blocks


joshgarrod

Recommended Posts

Hi, I have a new website I have been working on for the past 6 months supposed to be going live on Jan 1st. It is my first attemp at a home made CMS and I am now in BETA stages, my testers have mentioned that my image upload script is not perfect. At the moment my images simply upload with no alterations. What they have suggested and I agree is that the images should be resized on upload and have unique names. I have tried to do both but failed. I have managed to change the name of the image that is being uploaded by putting random numbers on the end but the name that is stored in the table is the original name and I can't get it to add the random numbers on the end. The other task I totally failed at and have been working on all week and broke my code so bad I have now reverted back to square one. Could someone please help me to add image resize on upload and to put the new image name into my table, I wld be most greatful. Thanks in advance for your time.

 

<?php

$idir = "../fleet/";   // Path To Images Directory


if (isset ($_FILES['fupload'])){

//upload the image to tmp directory
$url = $_FILES['fupload']['name'];   // Set $url To Equal The Filename For Later Use 
	if ($_FILES['fupload']['type'] == "image/jpg" || $_FILES['fupload']['type'] == "image/jpeg" || $_FILES['fupload']['type'] == "image/pjpeg") { 
		$file_ext = strrchr($_FILES['fupload']['name'], '.');   // Get The File Extention In The Format Of , For Instance, .jpg, .gif or .php 
		$copy = copy($_FILES['fupload']['tmp_name'], "$idir" . $_FILES['fupload']['name'], $file_ext).rand(10000 , 99999).$file_ext);   // Move Image From Temporary Location To Perm  
			}
			}
if (isset ($_FILES['fupload2'])){

//upload the image to tmp directory
$url = $_FILES['fupload2']['name'];   // Set $url To Equal The Filename For Later Use 
	if ($_FILES['fupload2']['type'] == "image/jpg" || $_FILES['fupload2']['type'] == "image/jpeg" || $_FILES['fupload2']['type'] == "image/pjpeg") { 
		$file_ext = strrchr($_FILES['fupload2']['name'], '.');   // Get The File Extention In The Format Of , For Instance, .jpg, .gif or .php 
		$copy = copy($_FILES['fupload2']['tmp_name'], "$idir" . $_FILES['fupload2']['name'], $file_ext).rand(10000 , 99999).$file_ext);   // Move Image From Temporary Location To Perm  
			}
			}
if (isset ($_FILES['fupload3'])){

//upload the image to tmp directory
$url = $_FILES['fupload3']['name'];   // Set $url To Equal The Filename For Later Use 
	if ($_FILES['fupload3']['type'] == "image/jpg" || $_FILES['fupload3']['type'] == "image/jpeg" || $_FILES['fupload3']['type'] == "image/pjpeg") { 
		$file_ext = strrchr($_FILES['fupload3']['name'], '.');   // Get The File Extention In The Format Of , For Instance, .jpg, .gif or .php 
		$copy = copy($_FILES['fupload3']['tmp_name'], "$idir" . $_FILES['fupload3']['name'], $file_ext).rand(10000 , 99999).$file_ext);   // Move Image From Temporary Location To Perm  
			}
			}
if (isset ($_FILES['fupload4'])){

//upload the image to tmp directory
$url = $_FILES['fupload4']['name'];   // Set $url To Equal The Filename For Later Use 
	if ($_FILES['fupload4']['type'] == "image/jpg" || $_FILES['fupload4']['type'] == "image/jpeg" || $_FILES['fupload4']['type'] == "image/pjpeg") { 
		$file_ext = strrchr($_FILES['fupload4']['name'], '.');   // Get The File Extention In The Format Of , For Instance, .jpg, .gif or .php 
		$copy = copy($_FILES['fupload4']['tmp_name'], "$idir" . $_FILES['fupload4']['name'], $file_ext).rand(10000 , 99999).$file_ext);   // Move Image From Temporary Location To Perm 
			}
			}

error_reporting (E_ALL ^ E_NOTICE);
    $usr = "user";
    $pwd = "pass";
    $db = "db";
    $host = "host";

    # connect to database
    $cid = mysql_connect($host,$usr,$pwd);
    if (!$cid) { echo("ERROR: " . mysql_error() . "\n");    }

    if ($_POST['submit']) {

	$fleetmake = mysql_real_escape_string($_POST['fleetmake']);
	$fleetmodel = mysql_real_escape_string($_POST['fleetmodel']);
	$fleetyear = mysql_real_escape_string($_POST['fleetyear']);
	$fleetberth = mysql_real_escape_string($_POST['fleetberth']);
	$fleetlength = mysql_real_escape_string($_POST['fleetlength']);
	$fleetchassis = mysql_real_escape_string($_POST['fleetchassis']);
	$fleetengine = mysql_real_escape_string($_POST['fleetengine']);
	$fleetlayout = mysql_real_escape_string($_POST['fleetlayout']);
	$fleettype = mysql_real_escape_string($_POST['fleettype']);
	$fleetcomments = mysql_real_escape_string($_POST['fleetcomments']);
	$pricelow = mysql_real_escape_string($_POST['pricelow']);
	$pricemid = mysql_real_escape_string($_POST['pricemid']);		
	$pricehigh = mysql_real_escape_string($_POST['pricehigh']);
	$fleetlocation = mysql_real_escape_string($_POST['fleetlocation']);
	$fleetimage1 = mysql_real_escape_string("$idir" . $_FILES['fupload']['name']);
	$fleetimage2 = mysql_real_escape_string("$idir" . $_FILES['fupload2']['name']);
	$fleetimage3 = mysql_real_escape_string("$idir" . $_FILES['fupload3']['name']);
	$fleetimage4 = mysql_real_escape_string("$idir" . $_FILES['fupload4']['name']);
	$fleetadded = date("F j, Y, g:i a");
	$fleetof = $account;
	$searchtags = "$fleetmake $fleetmodel $fleetberth berth motorhome for hire year $fleetyear $fleetmodel $fleetmake $fleetchassis motorhome $fleetmake $fleetmodel $fleetchassis $fleetmake $fleetchassis $fleettype $fleetlayout $fleetmake motorhome $fleetmodel motorhome $fleetberth berth motorhome $fleetmake $fleetberth berth motorhome $fleetmake motorhomes $fleetmake motor home $fleetmake motor homes $fleetmodel motorhomes $fleetlocation motorhome hire motorhome hire in $fleetlocaiton $fleetmake $fleetlocation $fleetmake $fleetmodel $fleetlocation";

        $SQL = " INSERT INTO fleet ";
        $SQL .= " (fleetmake, fleetmodel, fleetyear, fleetberth, fleetlength, fleetchassis, fleetengine, fleetlayout, fleettype, fleetcomments, pricelow, pricemid, pricehigh, fleetlocation, fleetimage1, fleetimage2, fleetimage3, fleetimage4, fleetadded, fleetof, searchtags) VALUES ";
        $SQL .= " ('$fleetmake', '$fleetmodel', '$fleetyear', '$fleetberth', '$fleetlength', '$fleetchassis', '$fleetengine', '$fleetlayout', '$fleettype', '$fleetcomments', '$pricelow', '$pricemid', '$pricehigh', '$fleetlocation', '$fleetimage1', '$fleetimage2', '$fleetimage3', '$fleetimage4', '$fleetadded', '$fleetof', '$searchtags') ";

        
        $result = mysql_db_query($db,$SQL,$cid);
      $last=mysql_insert_id();


        
        if (!$result) { echo("ERROR: " . mysql_error() . "\n$SQL\n");    }

	header("location:fleet_add_confirm.php?last=$last");
	exit();

    }
?>

Link to comment
Share on other sites

this is what i use maybe you can adapt it

 

// get variables
$productID=$_POST['PID'];
$productName=$_POST['productName'];
// Check for image file
if (!empty($_FILES['image_file']['tmp_name'])) {
// get image to remove
$lookup="SELECT * FROM product WHERE productID='$productID' LIMIT 1";
$lookres=mysql_query($lookup);
$row=mysql_fetch_array($lookres);
$imagerem=$row['image'];
$prodName=$row['name'];
// remove image
if (!empty($imagerem)) {
$fileremove="product_images/".$imagerem;
unlink($fileremove);
}
// create image (Height=600)
$file = $_FILES['image_file']['tmp_name'];
list($width, $height) = getimagesize($file);
// scale to height
$image_height = 600;
$image_width = $width * ($image_height / $height);
$imagenew = imagecreatefromjpeg($file);
// rename file to prevent overwrites
if ($imagerem!='') { $newname=mktime()."_product_".$productID.".jpg"; }
// for adding new image
if ($imagerem=='') { $newname = 'productImage_'.$productID.'.jpg'; }
// create image file
$imageset = imagecreatetruecolor($image_width, $image_height);
imagecopyresampled($imageset, $imagenew, 0, 0, 0, 0, $image_width, $image_height, $width, $height);
$output_file="product_images/".$newname;
imagejpeg($imageset, $output_file, 100);
// add new image to database
$sql="UPDATE product SET image='$newname' WHERE productID='$productID'";
$result=mysql_query($sql);
}
}

 

hope that can help you

Link to comment
Share on other sites

Hi, it is similar to what I used before, I still can't get it to work, here is my code now, I have only made changes to the first image:

 

<?php

$idir = "../fleet/";   // Path To Images Directory


if (isset ($_FILES['fupload'])){

//upload the image to tmp directory
$url = $_FILES['fupload']['name'];   // Set $url To Equal The Filename For Later Use 
list($width, $height) = getimagesize($url);
$image_height = 300;
$image_width = $width * ($image_height / $height);
$imagenew = imagecreatefromjpeg($url); //scale to height
	if ($_FILES['fupload']['type'] == "image/jpg" || $_FILES['fupload']['type'] == "image/jpeg" || $_FILES['fupload']['type'] == "image/pjpeg") { 
		$file_ext = strrchr($_FILES['fupload']['name'], '.');   // Get The File Extention In The Format Of , For Instance, .jpg, .gif or .php 
		$imageset = imagecreatetruecolor($image_width, $image_height);
		imagecopyresampled($imageset, $imagenew, 0, 0, 0, 0, $image_width, $image_height, $width, $height);
		$newname = 'fupload'.$account.'.jpg'; 
		$output_file="../fleet/".$newname;
		imagejpeg($imageset, $output_file, 100);

		   // Move Image From Temporary Location To Perm  
			}
			}
if (isset ($_FILES['fupload2'])){

//upload the image to tmp directory
$url = $_FILES['fupload2']['name'];   // Set $url To Equal The Filename For Later Use 
	if ($_FILES['fupload2']['type'] == "image/jpg" || $_FILES['fupload2']['type'] == "image/jpeg" || $_FILES['fupload2']['type'] == "image/pjpeg") { 
		$file_ext = strrchr($_FILES['fupload2']['name'], '.');   // Get The File Extention In The Format Of , For Instance, .jpg, .gif or .php 
		$copy = copy($_FILES['fupload2']['tmp_name'], "$idir" . $_FILES['fupload2']['name']);   // Move Image From Temporary Location To Perm  
			}
			}
if (isset ($_FILES['fupload3'])){

//upload the image to tmp directory
$url = $_FILES['fupload3']['name'];   // Set $url To Equal The Filename For Later Use 
	if ($_FILES['fupload3']['type'] == "image/jpg" || $_FILES['fupload3']['type'] == "image/jpeg" || $_FILES['fupload3']['type'] == "image/pjpeg") { 
		$file_ext = strrchr($_FILES['fupload3']['name'], '.');   // Get The File Extention In The Format Of , For Instance, .jpg, .gif or .php 
		$copy = copy($_FILES['fupload3']['tmp_name'], "$idir" . $_FILES['fupload3']['name']);   // Move Image From Temporary Location To Perm  
			}
			}
if (isset ($_FILES['fupload4'])){

//upload the image to tmp directory
$url = $_FILES['fupload4']['name'];   // Set $url To Equal The Filename For Later Use 
	if ($_FILES['fupload4']['type'] == "image/jpg" || $_FILES['fupload4']['type'] == "image/jpeg" || $_FILES['fupload4']['type'] == "image/pjpeg") { 
		$file_ext = strrchr($_FILES['fupload4']['name'], '.');   // Get The File Extention In The Format Of , For Instance, .jpg, .gif or .php 
		$copy = copy($_FILES['fupload4']['tmp_name'], "$idir" . $_FILES['fupload4']['name']);   // Move Image From Temporary Location To Perm 
			}
			}

error_reporting (E_ALL ^ E_NOTICE);
    $usr = "user";
    $pwd = "pass";
    $db = "db";
    $host = "host";

    # connect to database
    $cid = mysql_connect($host,$usr,$pwd);
    if (!$cid) { echo("ERROR: " . mysql_error() . "\n");    }

    if ($_POST['submit']) {

	//***this is new between here...



	//****and here...

	$fleetmake = mysql_real_escape_string($_POST['fleetmake']);
	$fleetmodel = mysql_real_escape_string($_POST['fleetmodel']);
	$fleetyear = mysql_real_escape_string($_POST['fleetyear']);
	$fleetberth = mysql_real_escape_string($_POST['fleetberth']);
	$fleetlength = mysql_real_escape_string($_POST['fleetlength']);
	$fleetchassis = mysql_real_escape_string($_POST['fleetchassis']);
	$fleetengine = mysql_real_escape_string($_POST['fleetengine']);
	$fleetlayout = mysql_real_escape_string($_POST['fleetlayout']);
	$fleettype = mysql_real_escape_string($_POST['fleettype']);
	$fleetcomments = mysql_real_escape_string($_POST['fleetcomments']);
	$pricelow = mysql_real_escape_string($_POST['pricelow']);
	$pricemid = mysql_real_escape_string($_POST['pricemid']);		
	$pricehigh = mysql_real_escape_string($_POST['pricehigh']);
	$fleetlocation = mysql_real_escape_string($_POST['fleetlocation']);
	$fleetimage1 = $output_file;
	$fleetimage2 = mysql_real_escape_string("$idir" . $_FILES['fupload2']['name']);
	$fleetimage3 = mysql_real_escape_string("$idir" . $_FILES['fupload3']['name']);
	$fleetimage4 = mysql_real_escape_string("$idir" . $_FILES['fupload4']['name']);
	$fleetadded = date("F j, Y, g:i a");
	$fleetof = $account;
	$searchtags = "$fleetmake $fleetmodel $fleetberth berth motorhome for hire year $fleetyear $fleetmodel $fleetmake $fleetchassis motorhome $fleetmake $fleetmodel $fleetchassis $fleetmake $fleetchassis $fleettype $fleetlayout $fleetmake motorhome $fleetmodel motorhome $fleetberth berth motorhome $fleetmake $fleetberth berth motorhome $fleetmake motorhomes $fleetmake motor home $fleetmake motor homes $fleetmodel motorhomes $fleetlocation motorhome hire motorhome hire in $fleetlocaiton $fleetmake $fleetlocation $fleetmake $fleetmodel $fleetlocation";

        $SQL = " INSERT INTO fleet ";
        $SQL .= " (fleetmake, fleetmodel, fleetyear, fleetberth, fleetlength, fleetchassis, fleetengine, fleetlayout, fleettype, fleetcomments, pricelow, pricemid, pricehigh, fleetlocation, fleetimage1, fleetimage2, fleetimage3, fleetimage4, fleetadded, fleetof, searchtags) VALUES ";
        $SQL .= " ('$fleetmake', '$fleetmodel', '$fleetyear', '$fleetberth', '$fleetlength', '$fleetchassis', '$fleetengine', '$fleetlayout', '$fleettype', '$fleetcomments', '$pricelow', '$pricemid', '$pricehigh', '$fleetlocation', '$fleetimage1', '$fleetimage2', '$fleetimage3', '$fleetimage4', '$fleetadded', '$fleetof', '$searchtags') ";

        
        $result = mysql_db_query($db,$SQL,$cid);
      $last=mysql_insert_id();

        
        if (!$result) { echo("ERROR: " . mysql_error() . "\n$SQL\n");    }


	header("location:fleet_add_confirm.php?last=$last");
	exit();

    }
?>

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.