删除图像行并从目录中删除图像

时间:2015-01-13 21:16:05

标签: php mysql unlink

正如标题所述,我试图从数据库中删除图像行信息,并从图库目录中删除实际图像。

如果我运行它,它会从我的数据库中删除该行:

$id = intval($_GET['id']);

$deletepic = DB::getInstance()->delete('gallery', array(
    'id', '=', $id
));

如果我执行以下操作,它将从目录中删除图像,但不会删除该行。

$id = intval($_GET['id']);
$gallery = DB::getInstance()->query("SELECT `file_name` FROM `gallery` WHERE ID = $id");

foreach($gallery->results() as $file_name){

$pic =  ($file_name->file_name);
}

$deletepics = DB::getInstance()->delete('gallery', array(
    'id', '=', $id,
    unlink('../../images/gallery/'.$pic)
));

我无法理解如何在不运行select查询的情况下获取图像的名称,但我需要像这样运行它,以便取消链接图像。

有人可以帮我把删除行和取消链接功能结合起来吗?

任何建议都将受到赞赏。

1 个答案:

答案 0 :(得分:2)

这应该有效

$deletepics = DB::getInstance()->delete('gallery', array('id', '=', $id));
unlink('../../images/gallery/'.$pic);