Header()不重定向PHP

San*_*ble 2 php redirect http-headers

我正在使用以下PHP代码来检查会话.但如果会话未登录,则页面不重定向只显示黑页.

我的If条件是对的!它正在击中头功能..这是我的代码:

if(
    !isset($_SESSION['SESS_MEMBER_ID']) 
    || (trim($_SESSION['SESS_MEMBER_ID']) == '') 
    AND !isset($fb_login)
) {
    header("location:login.php?msg=Please+Login+Again.");
}
Run Code Online (Sandbox Code Playgroud)

建议欢迎!

HTTP/1.1 200 OK
Date: Wed, 10 Oct 2012 10:57:14 GMT
Server: Apache/2.2.15 (CentOS)
X-Powered-By: PHP/5.3.3
Connection: close
Transfer-Encoding: chunked
Content-Type: text/html; charset=UTF-8
Run Code Online (Sandbox Code Playgroud)

EM-*_*ons 17

如果您在header("Location: ");输出内容后使用,请确保您已在ob_start();之前的脚本中添加内容.ob_start();缓冲您的脚本,因此在您调用ob_end();或到达文件末尾之前不会输出任何内容.header("Location: ");内容已经输出到浏览器后调用可能会导致问题.


sen*_*lbp 7

ob_start(); 在PHP文件的开头,它将有所帮助,

<?php
    ob_start();
    /*
    Your code
    */
 ?>
Run Code Online (Sandbox Code Playgroud)