View Full Version : Help with image resize, upload and write info to database

03-24-2009, 06:40 AM
I am having problem with the code below. The code is meant to resize an image and create a thumbnail of the image, then upload both image and thumbnail to a /images directory and write their info into the database. But when I run the script, the thumbnail is created while the main image is not resized. here is the script.

//Get and work on your extensions

define ("MAX_SIZE","3600");

function getExtension($str) {
$i = strrpos($str,".");
if (!$i) { return ""; }
$l = strlen($str) - $i;
$ext = substr($str,$i+1,$l);
return $ext;


$image =$_FILES["file"]["name"];
$uploadedfile = $ran2.$extension;

if ($image)

$filename = stripslashes($_FILES['file']['name']);

$extension = getExtension($filename);
$extension = strtolower($extension);

if (($extension != "jpg") && ($extension != "jpeg") && ($extension != "png") && ($extension != "gif"))

$change='<div class="msgdiv">Unknown Image extension </div> ';
//work on file size

if ($size > MAX_SIZE*3600)
$change='<div class="msgdiv">You have exceeded the size limit!</div> ';

//creates a unique ID with a random number as a prefix - more secure than a static prefix
$c = uniqid (rand (),true);

//this md5 encrypts the username from above, so its ready to be stored in your database
$md5c = md5($c);

//This line assigns a random number to a variable. You could also use a timestamp here if you prefer.

$ran = rand () ;

//This takes the random number (or timestamp) you generated and adds a . on the end, so it is ready of the file extension to be appended.
$ran2 = $md5c.".";

//This assigns the subdirectory you want to save into... make sure it exists!
$target = "images/";

//This combines the directory, the random file name, and the extension
$target = $target . $ran2.$extension;

echo ($target);

if($extension=="jpg" || $extension=="jpeg" )
$uploadedfile = $_FILES['file']['tmp_name'];
$src = imagecreatefromjpeg($uploadedfile);

else if($extension=="png")
$uploadedfile = $_FILES['file']['tmp_name'];
$src = imagecreatefrompng($uploadedfile);

$src = imagecreatefromgif($uploadedfile);

echo $scr;






$filename = "images/". $ran2.$extension;

$filename1 = "images/small". $ran2.$extension;



//apply other form info and save to db

//This gets all the other information from the form
$pic = $ran2.$extension;

// Connects to your Database
mysql_connect("localhost", "root", "") or die(mysql_error()) ;
mysql_select_db("bizprofile") or die(mysql_error()) ;

//Writes the information to the database
mysql_query("INSERT INTO `employees` VALUES ('$name', '$email', '$phone', '$pic')") ;

//Writes the photo to the server
if(move_uploaded_file($_FILES['file']['tmp_name'], $target))

//Tells you if its all ok
echo "The file ". basename( $_FILES['file']['tmp_name']). " has been uploaded, and your information has been added to the directory";
else {

//Gives and error if its not
echo "Sorry, there was a problem uploading your file.";

<!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xml:lang="en" xmlns="http://www.w3.org/1999/xhtml" lang="en"><head>
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
<meta content="en-us" http-equiv="Content-Language">

<title>picture demo</title>

<link href=".css" media="screen, projection" rel="stylesheet" type="text/css">
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.0/jquery.min.js"></script>
<script type="text/javascript" src="js/jquery_002.js"></script>
<script type="text/javascript" src="js/displaymsg.js"></script>
<script type="text/javascript" src="js/ajaxdelete.js"></script>

<style type="text/css">
font-size:11px; color:#006600;
body {
color: #000000;
background-color:#999999 ;
background:#999999 url(<?php echo $user_row['img_src']; ?>) fixed repeat top left;

font-family:"Lucida Grande", "Lucida Sans Unicode", Verdana, Arial, Helvetica, sans-serif;

background-color: #fff;
font-size:18px;-moz-border-radius: 6px;-webkit-border-radius: 6px;
#container{width:763px;margin:0 auto;padding:3px 0;text-align:left;position:relative; -moz-border-radius: 6px;-webkit-border-radius: 6px; background-color:#FFFFFF }

<div align="center" id="err">
<?php echo $change; ?> </div>
<div id="space"></div>

<div id="container" >
<div id="con">

<table width="502" cellpadding="0" cellspacing="0" id="main">

<td width="500" height="238" valign="top" id="main_right">

<div id="posts">
&nbsp;&nbsp;&nbsp;&nbsp;<img src="<?php echo $filename; ?>" /> &nbsp;&nbsp;&nbsp;&nbsp;<img src="<?php echo $filename1; ?>" />
<form method="post" action="" enctype="multipart/form-data" name="form1">
<table width="550" border="0" align="center" cellpadding="0" cellspacing="0">
<td width="200"><div align="right" class="titles">Picture : </div></td>
<td width="350" align="left">
<div align="left">
<input size="25" name="file" type="file" style="font-family:Verdana, Arial, Helvetica, sans-serif; font-size:10pt" class="box"/>
<Td valign="top" height="35px" class="help">I</Td>
<tr><Td></Td><Td valign="top" height="35px"><input type="submit" id="mybut" value=" Upload " name="Submit"/></Td></tr>
<td width="200">&nbsp;</td>
<td width="350"><table width="200" border="0" cellspacing="0" cellpadding="0">
<td width="200" align="center"><div align="left"></div></td>
<td width="100">&nbsp;</td>







The db is
-- --------------------------------------------------------

-- Table structure for table `employees`

`name` varchar(30) DEFAULT NULL,
`email` varchar(30) DEFAULT NULL,
`phone` varchar(30) DEFAULT NULL,
`photo` varchar(100) DEFAULT NULL

-- Dumping data for table `employees`

03-24-2009, 07:29 AM
I have figured it out. the problem is on line 68 where I re-assigned the variable of target.

EZ Archive Ads Plugin for vBulletin Copyright 2006 Computer Help Forum