我有2个网页 修改新闻博客,如果我要删除博客,则打开delete.php。
我使用
检索博客$query = $db->prepare('SELECT * FROM `news` order by date DESC');
$query->execute();
$query->store_result();
$query->bind_result($id,$title);
while ($query->fetch()) {
$_SESSION['id'] = $id ;
$_SESSION['title'] = $title ;
<a href="deletenews.php">
}
我为$id
和$title
开了2个会话。
我有一个删除按钮,转到delete.php,
$id = $_SESSION['id'];
$title = $_SESSION['title'];
$query = $db->prepare('DELETE FROM `news` WHERE id = ? and title = ?');
$query->bind_param('ss', $id, $title);
$query->execute();
unset($_SESSION['id']);
unset($_SESSION['title']);
header("location: news.php");
我调用$id
和$title
会话在修改页面上进行测试,该工作正常,但当它转到delete.php时,它会发生变化。
它正在从数据库中删除,而不是例如id 1它将删除id 2,它将删除数据库中列表中的下一个。
我觉得很奇怪。
如果有人可以提供帮助......
答案 0 :(得分:0)
如果你有2条记录,第一条id = 1,第二条id = 2
while ($query->fetch()) {
$_SESSION['id'] = $id ;
//First loop $_SESSION['id'] = 1
//second loop $_SESSION['id'] = 2
$_SESSION['title'] = $title ;
<a href="deletenews.php">
}
// at the end $_SESSION['id'] = 2
你想做的是
while ($query->fetch()) {
<a href="deletenews.php?id=$id&title=$title">
//it will link the link ;) with the id of the news
}
delete.php中的更改将是:
$id = $_GET['id'];
$title = $_GET['title'];
玩得开心