1

我设置了一个简单的 while 循环,它返回表格中的所有图像以及它们各自的标题和描述,以便用户可以相应地更新每个图像的详细信息。

图像返回一个复选框,允许用户根据 php 代码删除图像

if($_POST['doDelete'] == 'Delete') {

if(!empty($_POST['u'])) {
    foreach ($_POST['u'] as $uid) {
        $id = filter($uid);
        mysql_query("delete from landscape where id='$id'");
    }
 }
 $ret = $_SERVER['PHP_SELF'] . '?'.$_POST['query_str'];;

 header("Location: $ret");
 exit();
}

如何将unlink()功能合并到页面中,以便文件也从服务器中删除?

4

3 回答 3

1

只需使用Unlink()with in 循环,如:

foreach ($_POST['u'] as $uid) {
    $id = filter($uid);
    if(mysql_query("delete from landscape where id='$id'")){
    unlink( '/path/to/images/' . $id);
    }
}

我使用过If,因为如果文件从数据库中成功删除,那么它将从服务器中删除。此外,如果您已按文件名将文件移动到文件夹中,则首先从数据库中获取有关文件的信息$id,然后使用

unlink( '/path/to/images/' . $file_name);

反而

unlink( '/path/to/images/' . $id);

希望它会帮助你。

于 2011-06-23T18:54:30.093 回答
0

如果图片是按照 ID 命名的:

foreach ($_POST['u'] as $uid) {
    $id = filter($uid);
    mysql_query("delete from landscape where id='$id'");
    unlink( '/path/to/images/' . $id);
}

在您的查询或 unlink 语句中使用它之前,请务必正确转义 $id。

于 2011-06-23T18:49:59.927 回答
-1

那么,服务器上的文件存储在哪里?它们是如何存储的?只需unlink使用指向图像存储位置的文件路径进行调用。

于 2011-06-23T18:48:47.107 回答