我有一个PHP页面: index.php
在这个页面中,我已经包含了另一个充当侧边栏的PHP页面。
在这个侧边栏中,有一个登录表单。
sidebar.php 页面首先检查SESSION,如果有会话,表单将不会显示,如果没有会话,表单将显示,以便访客可以登录英寸session_start();
$guest = true;
if(!isset($_SESSION["id"])){
//This is a Guest
$guest = true;
} else {
//This is not a Guest
$guest = false;
}
//Then there's the PHP codes that handles form submitting
if(isset($_POST["submit"])){
//In the end, if everything is valid
$_SESSION["id"] = $userID;
}
通常页面会在提交表单后刷新,在这种情况下,我希望刷新包含的文件,再次重新加载后,我希望登录表单消失,因为$_SESSION["id"]
现在是SET,但是它没有。
如果我刷新页面(F5),表单就会消失,并且它可以正常工作,但是在我提交表单后它没有直接工作,我试图添加。
header("Location: http://localhost/index.php");
然而它不起作用。
答案 0 :(得分:0)
请在会话检查之前调用提交操作,
session_start();
$guest = true;
if(isset($_POST["submit"])){
$_SESSION["id"] = $userID;
}
if(!isset($_SESSION["id"])){
//This is a Guest
$guest = true;
} else {
//This is not a Guest
$guest = false;
}