删除页面时如何重定向到另一个页面

时间:2014-07-26 19:18:10

标签: php redirect header

在我的网站中,当删除某些内容时,我试图重定向到另一个页面。

在我的情况下,我创建了事件,每个事件都有自己的页面(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");
    }

1 个答案:

答案 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");
}