$ _SESSION ['var']在第二次登录之前不保存变量

时间:2016-02-19 07:26:47

标签: php session

我尝试登录我的网站,但$ _SESSION []变量没有保存数据。直到我第二次尝试才​​能登录。它只发生在我第一次在任何计算机上登录时。之后当我再次在同一台计算机上登录时,只需要一次尝试。擦除cookie使得必须再次登录两次。 我检查变量是否存在于page.php中,如果不存在,则重定向到index.php

page.php中的

代码,用于检查会话登录变量是否为空

<?php
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
header('Content-Type: text/html; charset=UTF-8');
session_start();
ob_start();


if(empty($_SESSION['login'])){
    echo '<meta HTTP-EQUIV="REFRESH" content="0; url=index.php">';
}

这是我的代码(index.php):

<?php
session_start();
ob_start();
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
include("conec.php");

$message="";


    if(isset($_SESSION['login'])) {
        //echo '<meta HTTP-EQUIV="REFRESH" content="0; url=page.php">';
    }

    $message="";
    if(isset($_POST['send'])) {
        $result = mysql_query("SELECT login FROM user WHERE login='" . $_POST["login"] . "' and password = '". $_POST["password"]."'");
        $row  = mysql_fetch_array($result);
        if(is_array($row)) {
            $_SESSION['login'] = $row[login];
            echo '<meta HTTP-EQUIV="REFRESH" content="0; url=page.php">';
        } else {
            $message = "Invalid user or password!";
        }

    }

        <form class="form-horizontal" role="form" name="" method="post">
            <div class="form-group">
                <label class="control-label col-sm-2" for="login">Login:</label>
                <div class="col-sm-10">
                  <input type="text" class="form-control" id="login" name="login">
                </div>
            </div>
            <div class="form-group">
                <label class="control-label col-sm-2" for="pwd">Password:</label>
                <div class="col-sm-10"> 
                  <input type="password" class="form-control" id="password" name="password">
                </div>
            </div>
            <button type="submit" name="send" id="send" class="btn btn-primary pull-right">Send</button><br />
        </form>

我也试过

header("Location: page.php");
header("Location: http://www.page.php");
echo '<meta HTTP-EQUIV="REFRESH" content="0; url=http://www.page.php">';

唯一可以将我重定向到其他页面的是我使用

的时候
echo '<meta HTTP-EQUIV="REFRESH" content="0; url=http://www.page.php">';  

echo '<meta HTTP-EQUIV="REFRESH" content="0; url=page.php">';  

0 个答案:

没有答案