php如何实现新的图片上传时,命名与原图一样并同时删除原图,避免产生很多垃圾图片,严重占用了空间

发布于 2021-11-24 02:05:54 字数 1065 浏览 1005 评论 4

    在修改所发布的带有图片的信息时,原图没有被删除,依然保留在所上传的那个文件夹中,这样一来就产生了很多垃圾图片,严重占用了空间。

     用PHP实现。下面是一些代码:这个代码实现了上传,但是原图不能被删除,而且新图的命名自加了1,请问怎么使新图命名与原图一样且同时将原图删除?在线等,急急急。

$upfile=$_POST[upfile];

if($upfile!=""){
$sql=mysql_query("select * from tb_shangpin where id=".$_GET['id']."",$conn);
$info=mysql_fetch_array($sql);
unlink(substr($info[tupian],6,(strlen($info[tupian])-6))); 

}

function getname($exname){
   $dir = "upimages/";
   $i=1;
   if(!is_dir($dir)){
      mkdir($dir,0777);
   }
   while(true){
       if(!is_file($dir.$i.".".$exname)){
        $name=$i.".".$exname;
        break;
    }
    $i++;
  }

 return $dir.$name;
}

$exname=strtolower(substr($_FILES['upfile']['name'],(strrpos($_FILES['upfile']['name'],'.')+1)));

$uploadfile = getname($exname);

move_uploaded_file($_FILES['upfile']['tmp_name'], $uploadfile);

if(trim($_FILES['upfile']['name']!=""))
 { 
  $uploadfile="admin/".$uploadfile;
}
else
 {
  $uploadfile="";
 }

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

看透却不说透 2021-11-29 21:48:56

晕死,这三年前的帖子怎么上首页了

残花月 2021-11-29 05:45:58

将文件名修改成文件的md5值,会稍慢一点。。但是不会重 

风苍溪 2021-11-28 23:10:01

第4行代码很强大啊

夜无邪 2021-11-28 02:36:07

用名字判断很不合适 ,  md5 一下吧

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文