$_SESSION变量不起作用,在其他页面中不起作用


$_SESSION variables not working, not working in other pages

我已经在创建了会话

登录页面

   <?php
session_start();
include 'dbconfig.php';
$username = $_POST['username'];
$password = $_POST['password'];
$sql = "SELECT * FROM login WHERE username = '$username' AND password= '$password' ";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
    // output data of each row
    while($row = $result->fetch_assoc()) {
        $_SESSION["userid"] = $row['user'];
        echo $_SESSION["userid"];
    }
} else {
    echo "wrong";
}
$conn->close();
?> 

FETCHING LOGIN

function login() {
    var username = $("#username").val();
    var password = $("#password").val();
    if (username == "" || username == null || username == undefined || password == "" || password == null || password == undefined) {
        $('#foremptyvalue').show();
    } else {
        $('#foremptyvalue').hide();
        $('#loader').show();
        jQuery.ajax({
            url: baseurl + "login.php"
            , data: 'username=' + username + '&password=' + password
            , type: "POST"
            , success: function (response) {
                response = $.trim(response);
                if (response == "wrong") {
                    $('#loader').hide();
                    $('#forwronginput').show();
                    $("#username").val('');
                    $("#password").val('');
                } else {
                    $('#loader').hide();
                    $('#forwronginput').hide();
                    location.href = "account.php?id=" + response;
                }
            }
            , error: function () {}
        });
    }
}

标题。PHP

在此页面中,会话变量不起作用。我使用了以下代码:

<?php
session_start();
echo session_id();
$session = $_SESSION["userid"];
?>

结果低于

ptarbkn67poq1gkch2dh6fvqc3注意:未定义的索引:中的useridC: 第4行的''examplep''htdocs''feescounter''header.php

我还检查了会话保存路径是否可写以及是否可写。它将会话保存在C:''xamplep''tmp 中

您必须在使用会话之前启动它。从您的代码来看,这似乎不是这样。。。试着把下面的代码放在每个文件的顶部,看看它是如何运行的:

    <?php
    // THIS SHOULD BE THE VERY FIRST LINES OF CODE IN YOUR SCRIPTS
    if (session_status() == PHP_SESSION_NONE  || session_id() == '') {
        session_start();
    }

您的header.php文件应该是:-

<?php
if (!session_id()) {
    session_start();
}
if(!empty($_SESSION['userid'])){
   echo $_SESSION['userid'];
}else{
   echo 'guest user';
}