为了账号安全,请及时绑定邮箱和手机立即绑定

setcookie("userId","",time()-1); 这个不起作用,求解!!!

太郁闷了,我自己测试得到以下结果:

  1. 不选择自动登录时,可以正常注销,并且成功删除了session内容,不能直接访问后台页;

  2. 选择自动登录时,直接关闭浏览器,重新打开浏览器可以访问后台页,点击注销按钮回到登录页,此时不登录,通过url可以直接访问到后台页,且可以显示(欢迎你+用户名)。

我初步得到的结论是cooki没有清除掉,以下是我的部分关键代码

if($autoFlag){

                setcookie("userId",$result['id'],time()+7*24*3600);

                setcookie("userName",$result['username'],time()+7*24*3600);

            }

/**

     * 检查是否登录

     */

    function checkLogin(){

        if($_SESSION['userId'] == "" && $_COOKIE['userName'] == ""){

            alertMes("请先登录", "../login.php");

        }

    }

    

    /**

     * 注销管理员登录

     */

    function logout(){

        $_SESSION = array();

        if(isset($_COOKIE[session_name()])){

            setcookie(session_name(),"",time()-9999);

        }

        if(isset($_COOKIE['userId'])){

            setcookie("userId","",time()-9999);

        }

        if(isset($_COOKIE['userName'])){

            setcookie("userName","",time()-9999);

        }

        session_destroy();

        header("location:../login.php");

    }

<?php

                if(isset($_SESSION['username'])){

                    echo $_SESSION['username'];

                }elseif (isset($_COOKIE['userName'])){

                    echo $_COOKIE['userName'];

                }

            ?>


正在回答

1 回答

我也不懂  同求

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
手把手教你实现电商网站后台开发
  • 参与学习       117283    人
  • 解答问题       1999    个

手把手教你用PHP搭建电子商务平台,由浅入深教你搭建电商系统

进入课程

setcookie("userId","",time()-1); 这个不起作用,求解!!!

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信