logout.php没有session_destroy

时间:2014-05-30 11:58:38

标签: php session

我对logout.php 的问题,但可能不是Logout.php绝对有效。当用户进入时,他点击退出按钮logout.php重定向index.php

我的index.php是登录和注册页面。用户在index.php重定向main.php时,然后当用户点击注销用户重定向index.php时,它仍然有效。 Hoverwer如果用户在用户logedout网址后写入网址http://www.example.com/main.php,则表示您仍然可以进入。

index.php代码

<?php
ob_start("ob_gzhandler");
error_reporting(0);
include_once 'includes/db.php';
include_once 'includes/User.php';
session_start();
$session_uid=$_SESSION['uid']; 
if(!empty($session_uid))
{
    header("location:main.php");
}

$User = new User();

//Login
$login_error='';
if($_POST['user'] && $_POST['passcode'] )
{
    $username=$_POST['user'];
    $password=$_POST['passcode'];
    if (strlen($username)>0 && strlen($password)>0)
    {
        $login=$User->User_Login($username,$password);

        if($login)
        {
            $_SESSION['uid']=$login;
            header("Location:main.php");
        }
        else
        {
        $login_error="<span class='error'>Wrong password or username!</span>";
        }
    }
}

//Registration
$reg_error='';
if($_POST['email'] && $_POST['username'] && $_POST['password'] )
{
    $email=$_POST['email'];
    $username=$_POST['username'];
    $password=$_POST['password'];

    if (strlen($username)>0 && strlen($password)>0 && strlen($email) )
    {
        $reg=$User->User_Registration($username,$password,$email);

        if($reg)
        {
            $_SESSION['uid']=$reg;
            header("Location:main.php");
        }
        else
        {
            $reg_error="<span class='registererror'>Username or Email is already exists.</span>";
        }


    }
}

?>

session.php代码

 <?php
$session_uid=$_SESSION['uid']; 
// Session Private
if(!empty($session_uid))
{
    $uid=$session_uid;
    $login='1';
}
else if($_GET['username'] || $_GET['msgID'])
{
    $uid=$Wall->User_ID($username);
    $login='0';
}
else
{
    $url=$base_url.'index.php';
    header("location:$url");
}

?>

logout.php代码

 <?php
error_reporting(0);
session_start();
$_SESSION['uid']=''; 
if(session_destroy())
{
    $url=$base_url.'index.php'; 
    //header("Location: $url");
    echo "<script>window.location='$url'</script>";
}
?>

我做错了什么或丢失了。请帮帮我... Sory为我的英语:(

3 个答案:

答案 0 :(得分:0)

尝试这样做:

unset($_SESSION['uid']);

答案 1 :(得分:0)

session.php中,您无法启动会话:

session_start();

答案 2 :(得分:0)

logout.php

尝试此代码
<?php 
   session_start();
    session_destroy();
    header('Location: index.php');
?>
相关问题