PHP無法在登錄頁面登錄頁面&上存儲$ _SESSION變量的值。起初問題是,每個頁面請求都會生成一個新的SESSION ID。但即使解決了該問題,也無法識別$ _SESSION變量的值或索引。爲PHP中同一網站的不同頁面生成多個會話ID
登錄頁面代碼
if(mysqli_num_rows($data) == 1)
{
setcookie('user_id',$row['user_id'],time()+(60*60*24));
setcookie('username',$row['username'],time()+(60*60*24));
echo $row['user_id'];
$name = $row['username'];
if(!empty($_COOKIE['user_id'])&&!empty($_COOKIE['username']))
header('Location: '."home.php",200);
else
{
$_SESSION['user_id']=$row['user_id'];
$_SESSION['username']= $name;
header('Location: '."home.php",200);
}
}
着陸頁代碼
<?php
session_start();
if (isset($_SESSION['PHPSESSID'])) {
header('Location: '."index.php",200);
}
else{
echo "Hello".$_SESSION["username"];
}
?>
php.ini文件配置
session.use_cookies開開
個session.use_only_cookies開開
session.use_strict_mode關關
你在登錄頁面上有'session_start()'嗎? – anson 2014-10-28 23:35:49
讓你的'session_start();'通用並且用'include'來調用它;'爲什麼在登錄頁面將'$ _SESSION ['username']'賦值給'$ name'? – Xrait 2014-10-29 00:11:54
@andbeyond是會話啓動()也包含在登錄頁面中,作爲頁面中的第一件事。 – 2014-10-29 11:52:23