以下是用于为演员上传个人资料图片的代码。当前,当它执行此操作时,添加到mysql中的文件名的格式为“ xxxxx-'原始文件名'” x为随机数。您如何修改它,以便格式按“ xxxxx-Actors_Name”的顺序排列?我想将名称从原始文件名更改为Actors_Name,并且在此过程中要用“ _”替换任何空格。
如果可能的话,甚至最好在开始时删除随机数,然后放置将数据提交给mysql时分配的ID号。
<?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;
}
?>
最佳答案
代替
$image=rand(0,99999)."-".$_FILES['actors_image']['name'];
采用
$image=rand(0,99999)."-".str_replace(' ', '_',$_POST['actors_name']);
在文件名中包含演员的名字。
可能有第二部分,但您没有提供足够的信息。通常:首先插入没有图像名称的新记录,然后获取新记录的ID,最后使用它来构建图像名称并更新数据库并保存图像。
关于php - 上传图片并更改原始图片文件名,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/36167622/