在我的网站中,当删除某些内容时,我试图重定向到另一个页面。
在我的情况下,我创建了事件,每个事件都有自己的页面(fe:event.php?event_id=20
)。当我在事件页面上时,我可以删除该事件。但是,如果我使用动作标签重定向到另一个页面,则不会删除该事件。当我留在页面上时,它会删除该事件,但它会保留在事件页面上。
我尝试在查询完成后使用标题("location:..."
)重定向,但它没有做任何事情。我做错了什么?
include_once("classes/Event.class.php");
$event = new Event();
if (isset($_POST["btnDeleteEvent"])){
try{
$event_id = $_GET['event_id'];
$event->DeleteEvent($event_id);
}
catch(Exception $e) {
$feedback = $e->getMessage();
}
}
<form class='event_center' class='form-horizontal' action='<?php echo "event.php" . "?event_id=" .$event_id; ?>' method='post'> <img src="images/trash_white.png"/>
<button type='submit' name='btnDeleteEvent' >Delete</button></form>
(这里我在页面上执行查询,但必须转到events.php
)
功能:
public function DeleteEvent($event_id){
$db = new Db();
$select = "DELETE from tblevents WHERE event_id = " . $event_id . "";
$result = $db->conn->query($select);
return $result;
header("Location: events.php");
}
答案 0 :(得分:1)
点击
header("Location: events.php");
前
return $result;
该函数终止于
行 return $result;
因此无法访问header
声明
试试这个:
public function DeleteEvent($event_id){
$db = new Db();
$select = "DELETE from tblevents WHERE event_id = " . $event_id . "";
$result = $db->conn->query($select);
header("Location: events.php");
}