首页  >  文章  >  后端开发  >  php 怎么实现七天免登录

php 怎么实现七天免登录

藏色散人
藏色散人原创
2022-10-25 11:13:281618浏览

php实现七天免登录的方法:1、在前端创建一个用户选择七天免登录的按钮;2、在后端中,根据用户提交的用户名和密码查询到用户的id;3、将用户id存入cooike中;4、设置七天的过期时间即可。

php 怎么实现七天免登录

本教程操作环境:windows7系统、PHP8.1版、Dell G3电脑。

php 怎么实现七天免登录?

php中实现7天免登录功能,防止cookie欺骗

1、免登录思路

        用户选择七天免登录按钮,后端根据用户提交的用户名和密码查询到用户的id将用户id存入cooike中并设置七天的过期时间。在不清除cookie信息(非正常退出的时候),后台帮助用户登录。实际就是利用cooki实现。

2、验证登录文件:checkLogin.php

 prepare($sql);
$stm ->bindParam(1,$username);
$stm ->bindParam(2,$password);
$stm ->execute();
$res = $stm->fetch(PDO::FETCH_ASSOC);
if($stm->rowCount() == 1){
    //验证成功
    clearCookie();
    if($islogin==1){
        //记住密码
        setcookie("username",$res['username'],strtotime('+7 days'));
        $token = settoken($res['username'],$res['password'],$res['id']);
        setcookie("token",$token,strtotime('+7 days'));
    }else{
        // 无记住密码
        setcookie("username",$res['username']);
        $token = settoken($res['username'],$res['password'],$res['id']);
        setcookie("token",$token);
    }
    exit("
        
    ");
}else{
    //验证失败
    exit("
        
    ");
}
//清除cookie
function clearCookie(){
    setcookie("username",'',time()-1800);
    setcookie("token",'',time()-1800);
}
//设置token
function settoken($username,$password,$id)
{
    $salk = "czx";
    $token = md5($salk.$username.$password)."*".$id;
    return $token;
}

3、数据库配置文件:config.php

getMessage();
} catch(Throwable $e){
    //捕捉拥有Throwable接口的错误或者其他异常
    echo $e->getMessage();
}

4、登录页面文件 : login.php


                alert('用户已登录,请直接访问!');
                location.href ='index.php';
            
        ");
    }
?>



    
    
    登录



登录

用户名:
密 码:
记住密码

5、首页文件:index.php

prepare($sql);
    $stm ->bindParam(1,$uid);
    $stm ->execute();
    $result =$stm->fetch(PDO::FETCH_ASSOC);
    if($stm->rowCount()==1){
        $salk = "czx";
        $token_res = md5($salk.$result['username'].$result['password']);
        if($token_res != $token_arr[0]){
            exit("
                            
            ");
        }
    }else{
        exit("
            
        ");
    }
?>


  
    
    
    首页
  
  
  
    

陶转转首页

推荐学习:《PHP视频教程

以上是php 怎么实现七天免登录的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn