php中的标题位置问题

时间:2012-09-25 21:26:11

标签: php oop http-headers

  

可能重复:
  Headers already sent by PHP

    if ($_SERVER['REQUEST_METHOD'] == 'POST') 
    {   
include 'verify.php';
$verify = new Verify();
$vali = $verify->VerifyUserLogin($_POST['UserEmail'], $_POST['Password']);
if($_SESSION['umUser'] == true)
{
    header("Location: ../index.php");

}
else
{
    $errorLogin = $_SESSION['loginForm'];
}
    }


                    function VerifyUserLogin($userEmail, $password)
                {
            $this->connect();
            $pass = md5($password);
            $result = mysql_query("SELECT * FROM umuser where umUserIsAdmin = 1 and umUserEmail = '".mysql_real_escape_string($userEmail)."' and umUserPassword = '".mysql_real_escape_string($pass)."'");
            if (mysql_num_rows($result) > 0)
            {
        while($row = mysql_fetch_array($result))
        {
            $_SESSION['umAnanymousGid'] = $row['umUserGID'];
            $_SESSION['umUserName'] = $row['umUserName'];
            $_SESSION['umUserEmail'] = $row['umUserEmail'];
            $_SESSION['umUserId'] = $row['umUserID'];
            $_SESSION['umUser'] = true;
        }


        //echo $_SESSION['umUser'];
        //header('Location:../');

    }

问题是它没有重定向到位置并发出警告 警告:无法修改标头信息 - 已经发送的标头(输出从......开始)

请帮助

由于

1 个答案:

答案 0 :(得分:0)

你可以这样做:

<?php
ob_start();
/**
content of your page
*/
ob_end_flush();
?>

或者您可以测试$ _SESSION的长度(计数),如果它为空,那么任何会话都是打开的

相关问题