Php 函数仍然在没有活动会话的情况下从链接执行
我得到了一些在Php 函数仍然在没有活动会话的情况下从链接执行,php,session,get,Php,Session,Get,我得到了一些在$\u GET中使用值执行的代码,以及一些检查活动会话的代码。然而,当我在没有活动会话的情况下直接访问链接时,它仍然执行该函数,然后返回登录页面 我的代码: 我的登录头: <?php session_start(); if (!isset($_SESSION['Username'])|| $_SESSION["Actief"] == 0|| $_SESSION["Actief"] == 2) { return header("Location: main_l
$\u GET
中使用值执行的代码,以及一些检查活动会话的代码。然而,当我在没有活动会话的情况下直接访问链接时,它仍然执行该函数,然后返回登录页面
我的代码:
我的登录头:
<?php
session_start();
if (!isset($_SESSION['Username'])|| $_SESSION["Actief"] == 0||
$_SESSION["Actief"] == 2) {
return header("Location: main_login.php");
exit();
}
AdminOnlyHeader
只是检查管理员状态。这似乎也可以通过输入链接来绕过
因此,如果你仍然不明白我的意思,下面是我所做工作的简短总结:
ExecuteQuery
)从中删除
return
return header("Location: main_login.php");
我们需要两个参考来理解这一点:
- 第部分:
- 部分:
die()
/exit()
,则始终执行并显示代码
基本上,由于您返回了,它将不会到达
exit()
部分,这意味着它将把执行返回到主脚本—在这种情况下不应该执行的函数。或多或少起作用,它不执行该函数(是的)但是它返回一个404 not found,而不是登录页面。您有main\u login.php
文件吗?浏览器中的url是否正确@米格尔普。它以前起作用了吗?啊,我找到了引起它的原因。我在另一个目录里。一旦我弄清楚如何返回而不更改登录头文件,如果你的方法有效,我将进行更新。是的,现在一切都正常了。我确实删除了要求,并在那个特定的网站上对标题重新编码了一点,这样评委们就不会太高兴了,但是,嘿,它起作用了。谢谢你的帮助!
return header("Location: main_login.php");