Php 基于url变量取消图像链接

Php 基于url变量取消图像链接,php,image,unlink,Php,Image,Unlink,代码更新!! 我正试图从数据库中删除特定文件夹中的图像+数据。 到目前为止,它会删除数据库数据,但不会将图像与数据库数据解除链接…脚本如下: // echo '<pre>'; var_dump($row_rs_galleries);exit; $path=$_get[$row_rs_galleries['gallery_image']]; $file="../uploads/gallerytitle/resized/$path"; unli

代码更新!! 我正试图从数据库中删除特定文件夹中的图像+数据。 到目前为止,它会删除数据库数据,但不会将图像与数据库数据解除链接…脚本如下:

          // echo '<pre>'; var_dump($row_rs_galleries);exit;
    $path=$_get[$row_rs_galleries['gallery_image']];
    $file="../uploads/gallerytitle/resized/$path";
    unlink($file);

$deleteSQL = sprintf("DELETE FROM galleries WHERE gallery_id=%s",
                       GetSQLValueString($_GET['gid'], "int"));
它正在从数据库中删除数据,但仍然没有取消图像链接…路径似乎正常,数组也正常..可能是什么问题

这里的整个页面代码(如果我将unlink函数放在错误的位置?)



我建议您不要在url上放置查询字符串,这段代码有点混乱,可能会妨碍代码的调试,但无论在哪里,问题都可能出现在数组$row\rs\u库中,在

$file= realpath(dirname(__FILE__) . "../uploads/gallerytitle/resized/$path");
您可以将其放置以查看阵列返回的内容:

$file= realpath(__DIR__ . "../uploads/gallerytitle/resized/$path");
echo';var_dump($row_rs_画廊);出口

现在,您可以看到该数组中的标识符和值发生了什么变化:D

您正在使用要删除的文件中的相对路径,这可能就是问题所在

尝试将函数与
dirname(\uuuu FILE\uuuu)
\uuuu DIR\uuuu
一起使用,以检索文件的绝对路径

如果您的php版本小于5.3

$path = $_GET[$row_rs_galleries['gallery_image']];
php版本=>5.3

$path = $row_rs_galleries['gallery_image'];
此外,我建议在删除文件之前检查文件是否存在

编辑

你为什么用这个

而不是


这听起来像是权限问题。如果您运行的是linux,您可能需要检查您的apache用户(通常是www数据)对您试图从中删除文件的文件夹是否具有适当的权限。谢谢。我正在运行windows。我认为权限应该是可以的,因为我可以将图像上载到给定的文件夹。我想问题出在这段代码中:$path=$\u GET[$row_rs_galleries['gallery_image']];$file=“../uploads/gallerytitle/original/$path”取消链接($file);尝试过,但由于某些原因,文件仍然存在……也许我将取消链接功能放错了位置?我将在该页面上发布我所有的代码,也许你可以看看并告诉我它是否应该放在那里。。(如果文件存在,但尚未实现)如果我检查正确,则无任何内容..在该行前面添加了打印内容并在浏览器中打开-无任何内容..试图通过网站删除文件,还显示空白页面根据您的指示更改了代码。仍然有问题..图像仍在文件夹中。还有其他想法吗?感谢您帮助btwprint
$totalRows\r\u galleries
还有您是否使用
gid
查询对其进行测试?如
index.php?gid=NUMBER_此处
它已被删除,因为它不会检查文件是否被删除
$file= realpath(dirname(__FILE__) . "../uploads/gallerytitle/resized/$path");
$file= realpath(__DIR__ . "../uploads/gallerytitle/resized/$path");
if (file_exists($file)) {
    unlink($file);
}
$path = $_GET[$row_rs_galleries['gallery_image']];
$path = $row_rs_galleries['gallery_image'];