0

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

 <?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.

    }
}
?>
4

1 回答 1

0

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

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

于 2013-01-29T21:16:31.450 回答