我写了以下login.php
文件。
<?php
session_start();
//Check everything and if everything is correct and the username and password is correct and available
echo "Successfully";
$_SESSION['login_user'] = $username;
// and etc
?>
现在,如果用户名为session
,则结果$_SESSION['login_user']
值也为session
。
然后我创建check-session.html
文件,如下所示:
<html>
<body>
<form method = "POST" action = "check.php">
<input type = "submit" value = "check-session">
</form>
</body>
</html>
然后check.php
文件如下:
<?php
if(isset($_SESSION['login_user'])) {
echo "session is available";}
else { echo "session is not available"; }
?>
但问题是login
操作成功,现在我想知道会话是否真的创建,点击check-session
页面中的check-session.html
按钮后,我从服务器看到的结果如下:
session is not available
另外,对于更多信息,我使用wamp
服务器。
答案 0 :(得分:0)
将SIGABRT
放在每个使用会话的页面的开头或以任何方式与它们相关。
在session_start();
文件的开头
check.php
答案 1 :(得分:0)
您可以通过创建用于设置会话的单独文件来解决此问题,并在每个登录页面的开头包含该文件。
这是用于检查会话的c.php ...
<?php
include 'b.php';
if(isset($_POST['check_session']))
{
if(isset($_SESSION['login_user']))
echo "session is available";
else
echo "session is not available";
}
?>
<form method = "POST" action = "c.php">
<input type = "submit" name="check_session" value = "check-session">
</form>
a.php登录
<?php
if(isset($_POST['login']))
{
header("Location: c.php");
}
?>
<html>
<body>
<form method = "POST" action = "a.php">
<input type="submit" name="login" value="Login">
</form>
</body>
</html>
并且还使用session_start()
简化b.php设置会话