Jump to content

Need help with assigning unique id to pictures


Fenhopi

Recommended Posts

Hi, I cant quite figure out how to  assign an unique id to the picture I upload to my page, all help would be appreciated.

 

Here's the upload code:

 
//This is the directory where images will be saved 
$target = "images/"; 
$target = $target . basename( $_FILES['photo']['name']); 

//This gets all the other information from the form 
$name=$_POST['name']; 
$email=$_POST['email']; 
$phone=$_POST['phone']; 
$pic=($_FILES['photo']['name']); 

// Connects to your Database 
mysql_connect("your.hostaddress.com", "username", "password") or die(mysql_error()) ; 
mysql_select_db("Database_Name") 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['photo']['tmp_name'], $target)) 
{ 

//Tells you if its all ok 
echo "The file ". basename( $_FILES['uploadedfile']['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."; 
} 
?> 

 

you can use the autoincrement from your table something like this, which gets the next id in your table that will be used

 

	$qShowStatus = "SHOW TABLE STATUS LIKE employees";
$qShowStatusResult = mysql_query($qShowStatus) or die ( "Query failed: " . mysql_error() . "<br/>" . $qShowStatus );
$row = mysql_fetch_assoc($qShowStatusResult);
$newID = $row['Auto_increment'];
$newname ='employee_'.$newID.'.jpg';

I was doing this just yesterday.

 

 

put this at the top:

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

 

Then replace:  $target = "images/";

$target = $target . basename( $_FILES['photo']['name']);

 

with:

 

$extension = getExtension($pic);
		$extension = strtolower($extension);
$randName = md5(rand() * time());
    $target = "images/". $randName . "." . $extension;

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.