我想为我的网站过程添加更多的安全性,以便试图绕过登录页面的外部用户将运行到!isset,该设置检查是否设置了登录$ _SESSION变量,如果不是,则会破坏会话并重定向回主登录页面。!isset返回FALSE和有效变量?
我的问题是!isset函数返回一个FALSE值,从而破坏会话和重定向,但是当我用print_r测试该页面上的变量时,它们被识别并存储。
我的代码(我削除变量):
<?php
session_start();
if(!isset($_SESSION['xxx'], $_SESSION['xxx']))
{ echo "Login successfull"; }
else
{ session_destroy();
header("location:main_login.php");
}
?>
如果有人可以解释我我做错了什么(甚至不一定是给我在纸上的答案,我想了解和学习以来我是一名新秀),那将是惊人的。我试图环顾四周,但无法真正找到我正在寻找的东西。提前谢谢了!
非常感谢你。我不知道'!'符号表示它检查NOT SET变量。 –
欢迎您。一般来说'!'的意思不是。例如'!true'将等同于'false'。 – Paddyd