标题重定向在随机时间工作 - 替代?

时间:2013-01-29 21:06:33

标签: php redirect header

登录代码,如果成功,则实现标头重定向。它随机工作,我不知道我在做什么让它工作然后失败。

 <?php
ob_start();
require ("include/PassHash.php");  

if(isset($_POST['login'])){

    // Returns more than 0 rows (Email found)
    if($total>0 && PassHash::check_password($row['password'], $_POST['password'])){     
        // Correct credentials.
        $_SESSION['user_id'] = $row['id'];
        $_SESSION['user_email'] = $email;
        session_set_cookie_params(24*60*60);
        header("Location: /index.php?p=user_account");
        exit();
        ob_end_flush();
    } else {
        // Incorrect password / email.

    }
}
?>

1 个答案:

答案 0 :(得分:0)

在php中,如果您正在编写涉及会话或标头的任何代码,则需要注意在调用代码之前阻止任何输出。发送输出后,响应标头也会被发送,您将无法更改它们。

输出可以是echo / print语句中的任何内容,但更常见的是,它在PHP代码之前的前导空格或换行符。您需要在第一行和文件的第一个字符处开始<?php打开标记。