奇怪的问题,试图解除链接()我的图像


Strange issue trying to unlink() my image

我删除图像,我有在我的表"横幅",我的sql删除工作正常。

但是我也想从文件夹中删除我的图像,所以我使用unlink()来实现这个目的。

但它不工作,图像从数据库中删除,但不从文件夹中删除。

我真的不明白为什么会发生这种情况,因为目录是正确的!

这里有我要删除的操作链接:

 echo ' <td>
         <a href="dashboard.php?exe=banner/banners&delbanner='.$readBannerResult['id'].'&img='.$readBannerResult['img'].'">
            Delete
         </a>
       </td>';

这里我有一个链接来确认删除:

echo '<span>You really want to Delete?
<a href="dashboard.php?exe=banner/banners">No</a> 
<a href="dashboard.php?exe=banner/banners&delbannertrue='.$readBannerResult['id'].'">Yes
</a>
</span>';

这是我的php:

if(!empty($_GET['delbannertrue']))
    {
        $thumb = $_GET['img'];
        $year   = date('Y');
        $month  = date('m');
        $folder = '../banner-images/';
 if(file_exists($folder.$year.'/'.$month.'/'.$thumb) && !is_dir($folder.$year.'/'.$month.'/'.$thumb.'/'))
    {
        unlink($folder.$year.'/'.$month.'/'.$thumb);
    }
        $delbannerTrue = $_GET['delbannertrue'];
        $delBanner = $pdo->prepare("DELETE FROM banners WHERE id =? ");
        $delBanner->bindValue(1,$delbannerTrue);
        $delBanner->execute(); 
        header('Location: dashboard.php?exe=banner/banners');
         }

您的代码正在寻找图像名称,注意:

    $thumb = $_GET['img'];
    unlink($folder.$year.'/'.$month.'/'.$thumb);

您的"确认删除"URL但是不包括img参数。将它添加到URL中,就像您对最初的delete链接所做的那样,它应该没问题。

改变,

<a href="dashboard.php?exe=banner/banners&delbannertrue='.$readBannerResult['id'].'">Yes

<a href="dashboard.php?exe=banner/banners&delbannertrue='.$readBannerResult['id'].'&img='.$readBannerResult['img'].'">Yes