我有1个SESSION变量,当插入登录表单并通过测试时将加载该变量。但是,该变量只能在一个页面中工作,当我点击包含同一个文件的不同页面时,它会给我一个SESSION,但它不起作用。它仅适用于链接到表单的页面。我正在使用post方法。 sample.php < - 正在运行的网站=" sample.php"因此它的联系。
sample.php
的开头代码<?php
session_start();
require 'php/login_admin.php';
if (isset($_SESSION['admin']))
echo ' all html code ';
login_admin.php
的代码if ($username == $row['username'] && $password == $row['password'])
{
session_set_cookie_params(3000, "/");
$_SESSION['admin'] = 'open';
} else {
session_close();
echo "Wrong password and username!";
}
注意我为所有页面设置了相同的设置,我不知道为什么只有直接链接到操作属性中的表单的页面才有效。
答案 0 :(得分:1)
在您的所有其他页面上,您只需要测试管理会话,如果失败则重定向到登录页面......或显示它......无论您决定什么。但是,我们假设我们转到一个专门的管理员登录页面以获得乐趣......
所以在所有其他页面上......除了登录页面......
<?php
session_start();
// Is the admin logged in?
if (!isset($_SESSION['admin']))
{
header("location:admin_login.php");
exit();
}
echo ' all html code ';