Below is a code for for uploading a profile image for an actor. Currently when it does the filename that gets added into mysql is in the format of "xxxxx-'original file name'" x being a random number. How can you modify it so that the format will be in the order of "xxxxx-Actors_Name" I want to change the name from the original file name to be the Actors_Name and in the process want to replace any spaces with '_'.
If its even possible would be even better to remove the random number at the start and put the id number that would get assigned when submitting the data to mysql.
<?php
mysql_query("SET NAMES 'utf8'");
if(isset($_POST['submit']))
{
$image=rand(0,99999)."-".$_FILES['actors_image']['name'];
$pic1=$_FILES['actors_image']['tmp_name'];
$tpath1='upload/'.$image;
copy($pic1,$tpath1);
$thumbpath='upload/thumbs/'.$image;
$obj_img = new thumbnail_images();
$obj_img->PathImgOld = $tpath1;
$obj_img->PathImgNew =$thumbpath;
$obj_img->NewWidth = 100;
$obj_img->NewHeight = 100;
if (!$obj_img->create_thumbnail_images())
{
echo $_SESSION['msg']="Please retry again.";
exit;
}
$data = array(
'actors_name' => $_POST['actors_name'],
'actors_image ' => $image ,
);
$qry = Insert('tbl_actors',$data);
$_SESSION['msg']="11";
header( "Location:actors-manage.php");
exit;
}
?>
Instead of
$image=rand(0,99999)."-".$_FILES['actors_image']['name'];
use
$image=rand(0,99999)."-".str_replace(' ', '_',$_POST['actors_name']);
to have the actor's name in the file name.
The 2nd part may be possible, but you have not provided enough information. In general: first insert the new record without the image name, then get the id of the new record, finally use that to construct the image name and update the database and save the image.