无法使用取消链接功能删除jpg

时间:2019-05-23 10:51:33

标签: php

删除功能

function delete_news($id,$img)
{
    $sql = $this->con->prepare("DELETE FROM `nm_news` WHERE news_id=:id");
    $sql->bindParam(':id', $id);
    $sql->execute();
    unlink("uploads/".$img);
    header('Location: all_news.php');
    $this->con = null;
}

在这里,我可以删除jpeg和png等所有图像,但无法删除jpg

插入图像功能

function update_category($id, $category_title, $sort_order, $status)
{
    $target_dir    = "uploads/";
    $target_file   = $target_dir . basename($_FILES["imageUpload"]["name"]);
    $uploadOk      = 1;
    $imageFileType = pathinfo($target_file, PATHINFO_EXTENSION);
    if (move_uploaded_file($_FILES["imageUpload"]["tmp_name"], $target_file)) {
    }
    $image = basename($_FILES["imageUpload"]["name"], ".jpg");
    if ($image) {
        $sql = $this->con->prepare("UPDATE nm_category SET category_title=:category_title,category_image=:category_image,category_order=:category_order,category_status=:category_status  WHERE category_id=:id");
        $sql->bindParam(':category_title', $category_title);
        $sql->bindParam(':category_image', $image);
        $sql->bindParam(':category_order', $sort_order);
        $sql->bindParam(':category_status', $status);
        $sql->bindParam(':id', $id);
    }
}

图像插入工作正常,但在jpg上取消链接仅在jpeg和png上无效

结果o / p: :按删除按钮后,整个数据将被删除,但图像仍保留在上载文件夹中

1 个答案:

答案 0 :(得分:1)

$image = basename($_FILES["imageUpload"]["name"], ".jpg");更改为$image = basename($_FILES["imageUpload"]["name"]);

这仅存储完整的文件名,包括.jpeg.png文件的扩展名。当您上载.jpg文件时,您将该文件存储在{扩展名包括扩展名的uploads/文件夹中,但没有扩展名保存到数据库

例如,myJpgFile.jpg存在于您的uploads/文件夹中,但是您试图将myJpgFileuploads/文件夹中的链接断开-该文件夹不存在。