0

我创建了一个更新数据库的页面。我希望该页面在更新页面上的所有代码完成后(并在几秒钟后)自动将您发送回主页(显示数据库信息的页面)。

我将 header() 函数放入,但它似乎在执行任何代码之前重定向。标头是正确的使用方法吗?在代码和短暂延迟之后是否有另一种重定向方式?

4

5 回答 5

0

是的,header()会做这项工作。只需在数据库更新代码之后调用此代码:

header('Location: ...');
exit;

为什么要在重定向之前添加任何延迟?

于 2013-05-06T17:31:53.967 回答
0

执行 PHP 代码后,您应该能够使用 header() 重定向。确保您的 header() 调用位于您要在重定向之前运行的代码之后。

于 2013-05-06T17:32:05.213 回答
0

header() 是正确的重定向函数,但是 header() 函数仅在页面没有输出时才有效。

如果您可以在此处显示一些代码,那就太好了。

<?php
header('Location: http://www.example.com/');
?>
于 2013-05-06T17:33:03.287 回答
0

是的,但在你执行你的代码后做..

<?php
function foo(){
    //do stuff here

    header("Location: redirect.php");
    exit();
}

确保在进行重定向之前不输出任何其他内容,否则会显示错误headers already sent

于 2013-05-06T17:32:31.127 回答
0

是的,使用header()函数 with Location: xxx,只需在代码完成活动后发送它。另请注意,为了使 header() 生效,在调用之前不能完成真正的页面输出header()(尽管可以通过使用输出缓冲来克服这一点)。

于 2013-05-06T17:32:48.330 回答