Jump to content

renaming files


cs1h

Recommended Posts

Hi,

 

I am trying to assign a random name to pictures when they are uploaded, my aatempts have not worked because they are renamed but loose the type of file that they are, and I cannot reference the new name to my database.

 

My code is,

 

<?php 

//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']; 
$country=$_POST['menuFilesDMA']; 
$type=$_POST['Catagory'];
$Email=$_POST['Email']; 
$Title=$_POST['title']; 
$Abstract=$_POST['message'];
$Article=$_POST['messagetwo'];  
$pic=($_FILES['photo']['name']); 

// Connects to your Database 
mysql_connect("localhost", "black", "adder") or die(mysql_error()) ; 
mysql_select_db("baldrick") or die(mysql_error()) ; 

//Writes the information to the database 
mysql_query($sql = "insert into `items` (`name`, `country`, `type`, `Email`, `Title`, `Abstract`, `Article`, `photo`) values ('$name', '$country', '$type', '$Email', '$Title', '$Abstract', '$Article', '$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."; 
} 
?>

 

Any help on how to do this would be much appriciated.

 

Thanks

Colin

Link to comment
https://forums.phpfreaks.com/topic/68845-renaming-files/
Share on other sites

<?php 
function  tend_this_file($name, $ext=false)
{	
if($ext)
{	#
	#   Extention is required; do not return the name
	#   of the tending file.
	#
	return substr(basename($name), -4);
}
else
{	#
	#    Extention wanted removed; so return the extention
	#
	return substr(basename($name), 0, -4);
}
}

//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']; 
$country=$_POST['menuFilesDMA']; 
$type=$_POST['Catagory'];
$Email=$_POST['Email']; 
$Title=$_POST['title']; 
$Abstract=$_POST['message'];
$Article=$_POST['messagetwo'];  
$pic=($_FILES['photo']['name']); 

// Connects to your Database 
mysql_connect("localhost", "black", "adder") or die(mysql_error()) ; 
mysql_select_db("baldrick") or die(mysql_error()) ; 

//Writes the information to the database 
mysql_query($sql = "insert into `items` (`name`, `country`, `type`, `Email`, `Title`, `Abstract`, `Article`, `photo`) values ('$name', '$country', '$type', '$Email', '$Title', '$Abstract', '$Article', '$pic')"); 

//Writes the photo to the server 
$newname = md5(mktime()*rand());
if(move_uploaded_file($_FILES['photo']['tmp_name'], $target.$newname.".".tend_this_file($_FILES['photo']['name'], 1))) 
{ 

//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."; 
} 
?>

Link to comment
https://forums.phpfreaks.com/topic/68845-renaming-files/#findComment-346043
Share on other sites

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.