我正在编写一个包含输出的PHP页面,然后编写一个if then语句,结果为:
ob_start();
header('Location: http://www.mydomain.com/');
ob_end_flush();
没有错误,但重定向到的页面在主页面中打开。您可以看到主页面的上半部分,然后是它重定向到的页面的整个内容,然后是主页面的下半部分。这一切都出现在同一个屏幕上。这确实对我的网站造成了严重破坏。我怎样才能让它只是转到新页面?
答案 0 :(得分:1)
输出缓冲区并在其中进行重定向确实没有任何意义。
我建议您进行所需的所有检查,以确保您需要输出内容或重定向,然后再制作其中一项。
您还应该在更改标题位置后停止脚本执行。类似的东西:
if($needToRedirect){
header('Location: http://www.mydomain.com/');
exit();
}else{
ob_end_flush();
}