Can';t注销mysql和php
我已经在我的应用程序中创建了一个登录/注销系统,但即使使用Can';t注销mysql和php,php,mysql,login,logout,Php,Mysql,Login,Logout,我已经在我的应用程序中创建了一个登录/注销系统,但即使使用session_start(),它也无法工作,会话_destroy()和会话_unset()等 以下是我迄今为止所做的工作: 第一页(登录) 您正在使用http身份验证 Cookie和会话对http身份验证没有任何影响 创建另一个登录/注销系统,这并不难。如果{不是如果(),那么应该是,然后是},而不是)等等。另外,您需要会话启动()在每一页中。我在每一页中都有session_start()+它是if(condition){}这就是
session_start(),它也无法工作代码>,会话_destroy()代码>和会话_unset()代码>等
以下是我迄今为止所做的工作:
第一页(登录)
- 您正在使用http身份验证
- Cookie和会话对http身份验证没有任何影响
创建另一个登录/注销系统,这并不难。如果{
不是如果(
),那么应该是,然后是}
,而不是)
等等。另外,您需要会话启动()代码>在每一页中。我在每一页中都有session_start()+它是if(condition){}这就是我一直以来的工作方式您的“风格”非常混乱,即使它确实适合您。是的,我看到了,但是,session_start()代码>,通常位于页面顶部,而不是在else
中的下方。可能是它被破坏的原因。这是在(else)之后,因为在我的情况下,或者说为了纠正它,我首先要做的条件是,如果没有登录或密码,或者如果它们是错误的,在这种情况下,什么都不必发生,但在另一种情况下,会话应该启动,并且显示一个成员页面(在echo之后)如果我使用另一个浏览器,它会改变什么吗?@user2507171,是的,你将能够通过cookie和会话处理身份验证。如果你使用另一个浏览器,它可能会改变。当然,但它仍然不能解决手头的“现有”问题。如果有人使用你现在使用的同一个怎么办?@user2507171看一看,我甚至没有注意到。
<?php
if(
!isset($_SERVER['PHP_AUTH_USER'])||
!isset($_SERVER['PHP_AUTH_PW'])||
($_SERVER['PHP_AUTH_USER'])!="admin"||
($_SERVER['PHP_AUTH_PW']!="admin")
)
{
header('WWW-Authenticate: Basic realm="Accès refusé"');
echo 'Accès refusé';
exit;
}
else
session_start ();
$_SESSION['PHP_AUTH_USER'] = "admin";
$_SESSION['PHP_AUTH_PW'] = "admin";
echo '
<?php
session_start();
session_unset ();
session_destroy();
header("Location: index.php");
die;
?>