2011-08-25 62 views
0

内置为什么这不工作,给网页的心不是在Firefox正确重定向错误重定向到如果与可变

$page_name = "home.php"; 

if (true) { 
//none 
} else { 
header("location:http://mysite.com/pages/".$page_name); 
die; 
}; 
+0

作品完美地铬 –

+0

有没有遇到错误?显而易见的是标题没有发送。 –

+0

@约翰尼没有帮助。 Chrome不解析php。 –

回答

0

尝试适当做一个网页不能正常工作 - 该方法是懒惰的重定向:

header('HTTP/1.1 302 Found'); 
header("Location: http://mysite.com/pages/$page_name"); 

注意间距和我已经明确选择的响应代码的事实。

虽然没有真正的理由让你没有工作,并且PHP应该找出你正在做一个重定向的事实,如果你设置了一个Location:头并设置了一个302代码,总是最好做它适当,所以你知道它应该工作。

+0

如果我使用大写L和$ PAGE_NAME它同样的问题给出了错误,如果我只需键入home.php替代它工作 – Poemm

+0

我有\t \t头功能(“位置:http:// $主$ URI/$文件名”); 的作品,我只是利用重定向这一次却行不通梅比它的,因为我抓住从$ _ POST [“链接”]值?我需要修改它吗? – Poemm

+0

它不是首都,而是'Location:'和URL之间的空间。还要确保你设置了状态行(首先调用'header')。 – DaveRandom

0

变化

if (true) { 

if (false) { 

,并在if语句的末尾删除分号。

结果:

$page_name = "home.php"; 

if (false) { 
//none 
} else { 
header("location:http://mysite.com/pages/".$page_name); 
die; 
} 

如果这不起作用,也改变了头调用遵循DaveRandom的建议。