2012-06-19 37 views
0

我们正在寻求在代码执行后将用户重定向到不同的页面,例如。表单验证,会话超时等。PHP重定向代码执行的正确用法

配售代码如下:

header("Location: http://localhost/example/"); exit(); 

显得无能为力比出口多()的代码在正确的点被执行。它不会将页面重定向到该URL。

我们如何将网页物理重定向到另一个URL。

+0

在'header'调用之前你有任何输出(echo,print,some HTML,...)吗? –

+0

你是否收到任何错误?你有错误报告吗? – Sarfraz

+2

通过调用error_reporting(true)打开错误报告;和ini_set('display_errors',E_ALL);你应该得到一些错误消息,可能是“头已经发送” – FatalError

回答

0

如何在执行必要的代码后使用HTML重定向?

echo '<meta http-equiv="Refresh" content="0;url=http://localhost/example/" />' 
+0

使用这个你没有解决你的实际问题,因为Fluffeh建议你在头之前发送一些输出。如果你不解决这个问题,它会在将来尝试设置其他标题时出现。 – MrCode

1

在调用Header()函数之前,您可能在输出中留有空白。在将任何输出发送回浏览器后,不能调用标题。

如果您可以查看该文件的输出,则可能会发现在调用Header()之前,脚本中的include或其他内容会创建一些空白。

如果在调用之前无法避免输出,则可能必须使用javascript来执行重定向。一个JavaScript的Window.Location应该做的伎俩。