如何在标题发送后跳转到其他页面?
我在我的模板文件中写了一些代码,我想在某些条件为真时使用php跳转到其他页面,但我不能在这里使用header命令,因为标题信息已经在其他php文件中发送过这个模板文件。那我怎么能跳到其他网址呢?只有使用js的方式?
Warning: Cannot modify header information - headers already sent by ...
答案 0 :(得分:2)
使用输出缓冲和标头清除来实现此目的。
ob_start()
...
if (!headers_sent()) {
foreach (headers_list() as $header)
header_remove($header);
}
ob_flush_end()
未经测试,但请试一试。
答案 1 :(得分:1)
你有两种选择。
a /使用javascript
window.location = "http://www.yoururl.com";
b /使用meta
<META http-equiv="refresh" content="5;URL=http://www.yourlink.com/new-link">
答案 2 :(得分:1)
来自CP510的anaswer很好。另一种方法是使用javascript重定向页面。要引用Ryan McGeary answer,您可以执行
// similar behavior as an HTTP redirect
window.location.replace("http://stackoverflow.com");
or
// similar behavior as clicking on a link
window.location.href = "http://stackoverflow.com";