图片删除后重定向回来

Redirecting back after image delete

这个问题可能是个新手,但我不知道如何做到这一点。所以我有一个页面,其中列出了不同图像类别的缩略图。 这是 index.php

中的内容
<a href="single_cat.php?cat_id='.$row['cat_id'].'"><p>'.$row['cat_name'].'</p></a>

然后在 single_cat.php 中我列出了这个 cat_id 中的所有项目。所有项目都有按钮 Delete,如果真的要删除此图像,该按钮会打开页面并发出警告。这是删除按钮

<a href="dellImage.php?image_id='.$row['image_id'].'" class="btn btn-default" role="button">
   Delete
</a> 

所以我尝试的是在删除图像后将用户从 dellImage.php 重定向回 single_cat

在dellImage.php

if (isset($_GET['image_id']))
{
    $image_id = $_GET['image_id'];
}
else
{
    die('<code>Error! Please try again.</code>');
}

if ( isset($_GET['image_id']) && isset($_POST['image_id']))  
{                   
    $stmt = $pdo->prepare("SELECT image_path FROM images where image_id = :image_id"); 
    $stmt->bindParam(':image_id', $image_id, PDO::PARAM_INT);
    $stmt->execute();
    if ($result = $stmt->fetch()) 
    {                       
        unlink("" . $result[0]);
        if($stmt = $pdo->prepare("DELETE FROM images WHERE image_id = :image_id"))
        $stmt->bindParam(":image_id", $image_id, PDO::PARAM_INT);
        $stmt->execute();
    }                   
    Database::disconnect();
if (isset($_POST)) {
    $_SESSION['deleted'] = '<code><center>The image is deleted!</center></code>';
} else {
    $_SESSION['deleted'] = false;
}
    header('Location: index.php');         
}           

所以我想重定向回 single_cat?cat_id=... 从哪个类别删除图像。

使用这个:

window.location = 'single_cat?cat_id=...';

你就快完成了.. 添加 cat_id 参数删除按钮 dellImage.php?image_id='.$row['image_id'].'&cat_id='.$_GET['cat_id'].' 并在 delImage.php 最后调用 header('Location: single_cat.php?cat_id='.$row['cat_id']); exit; 您可以检查 cat_id 参数是否存在,否则您可以将用户重定向到 index.php

在第二个 link 上,您还应该将 cat_id 的值添加到 URL 中,如下所示:

<a href="dellImage.php?image_id='.$row["image_id"].'&cat_id='.$_GET["cat_id"].'" class="btn btn-default" role="button">
   Delete
</a> 

然后,对于您的重定向:

header("LOCATION:singlecat.php?cat_id=".GET['cat_id'].");

我也想问一下你的link是在<?php ?>里面还是在<html></html>

里面

因为如果它在 <?php ?> 内,您的 link 应该如下所示:

echo "<a href='dellImage.php?image_id=".$row['image_id']."&cat_id=".$_GET['cat_id']."' class='btn btn-default' role='button'>
   Delete
</a>";

如果它在 <?php ?> 之外,它应该看起来像这样:

<a href="dellImage.php?image_id=<?php echo $row['image_id']; ?>&cat_id=<?php echo $_GET['cat_id']; ?>" class="btn btn-default" role="button">
   Delete
</a> 

当你从图片table中通过图片id选择image_path时,你必须带上类别id,然后你会得到猫id.And,你可以很容易地重定向返回您的 "single_cat?cat_id= ? " 页面。