如何在php中删除图片?

极光

我正在尝试删除ajax php文件中的图像。我有以下代码:

<?php
define('IS_AJAX', true);   

$id = $db->real_escape_string($_GET['photo_id']);    
$files = $db->query("SELECT * FROM uploaded_photos WHERE id=".$id);        
$files = $files->fetch_object();

$file = $files->path;

if($file){    
unlink("../uploads/".$file);    
$db->query("DELETE FROM uploaded_photos WHERE id='".$id);

}

在这种情况下,路径是图像,例如1.jpg。它确实删除了表格行,但没有删除上载文件夹中的图像。希望有人可以帮助我。预先感谢您的努力。

Poiz

您可能需要重新检查您的代码。您有未封闭的单引号。请参阅下面的代码...

        define('IS_AJAX', true);

        $id     = $db->real_escape_string($_GET['photo_id']);
        $files  = $db->query("SELECT * FROM uploaded_photos WHERE id=".$id);
        $files  = $files->fetch_object();

        $file   = $files->path;

        // NOTE THAT if($file) WOULD ALMOST ALWAYS RETURN TRUE SO LONG AS IT CONTAINS ANY STRING
        // HOWEVER file_exists WILL CHECK IF THE FILE PHYSICALLY EXIST ON THE PATH/LOCATION OR NOT.
        // PREFER file_exists IN THIS SCENARIO INSTEAD.
        if(file_exists("../uploads/" . $file)){
            // CHANGE THE FILE PERMISSION ON THE IMAGE SO THAT YOU CAN WORK WITH IT...
            chmod("../uploads/" . $file, 0755);   // <== GIVES YOU PERMISSION TO DEAL WITH THE FILE...
            unlink("../uploads/".$file);
            // BY THE WAY;  HERE IS A PROBLEM... YOU HAVE AN UNCLOSED SINGLE QUOTE AFTER THE EQUAL SIGN.
            // I REALLY WONDER HOW THE TABLE ROW DELETES WITH THE TYPO...
            // TRY REMOVING OR COMPLETING IT THOUGH:        
            //$db->query("DELETE FROM uploaded_photos WHERE id='".$id);   <=== SEE THAT SINGLE QUOTE AFTER "=" THERE? THAT'S YOUR ENEMY.
            $db->query("DELETE FROM uploaded_photos WHERE id=".$id);
        }

更新:无评论

    <?php

        define('IS_AJAX', true);

        $id     = $db->real_escape_string($_GET['photo_id']);
        $files  = $db->query("SELECT * FROM uploaded_photos WHERE id='{$id}'" );
        $files  = $files->fetch_object();       
        $file   = $files->path;

        if(file_exists("../uploads/" . $file)){
            chmod("../uploads/" . $file, 0777); 
            unlink("../uploads/".$file);    
            $db->query("DELETE FROM uploaded_photos WHERE id='{$id}'");
        }

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在Django的帖子中添加图片

来自分类Dev

如何在PHP中删除隐藏字符

来自分类Dev

如何在我的php邮件表单中添加图片标题?

来自分类Dev

如何在MFC图片控件中的设计时显示图片?

来自分类Dev

如何在php中显示Blob类型的图片?

来自分类Dev

如何在文字或段落中包含图片

来自分类Dev

如何在PHP中删除多维数组中的元素?

来自分类Dev

如何在PHP中上传图片?

来自分类Dev

如何在CSS中修复重叠的图片?

来自分类Dev

如何在图库中打开图片

来自分类Dev

如何在Android中显示图片视图?

来自分类Dev

如何在终端中修改多张图片?

来自分类Dev

如何在div中样式化图片?

来自分类Dev

如何在React中使用API从数据中删除图片

来自分类Dev

如何在PHP中删除多维数组中的特定层?

来自分类Dev

如何在JavaScript测验中显示图片?

来自分类Dev

如何在终端中修改多张图片?

来自分类Dev

图片扩展:如何在模板中获取完整的图片路径?

来自分类Dev

如何在flac中删除嵌入的图片并添加歌词?

来自分类Dev

如何在PHP中调整上传图片的大小

来自分类Dev

如何在PHP中删除隐藏字符

来自分类Dev

如何在将图片上传到php中之前动态重命名图片

来自分类Dev

如何在MFC图片控件中的设计时显示图片?

来自分类Dev

如何在PHP中删除相同的数字?

来自分类Dev

如何在PHP中删除多维数组中的元素?

来自分类Dev

如何在PHP中上传图片?

来自分类Dev

如何在Wordpress中更改精选图片的图片大小?

来自分类Dev

如何在php中从字符串中删除文本?

来自分类Dev

如何在php中从mysql中删除一行