php 怎么实现七天免登录

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

php 怎么实现七天免登录

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

php 怎么实现七天免登录?

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

1、免登录思路

立即学习“PHP免费学习笔记(深入)”;

        用户选择七天免登录按钮,后端根据用户提交的用户名和密码查询到用户的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("                    alert('登录成功!');            location.href ='index.php';            ");}else{    //验证失败    exit("                    alert('用户名或密码有误!');            location.href ='login.php';            ");}//清除cookiefunction clearCookie(){    setcookie("username",'',time()-1800);    setcookie("token",'',time()-1800);}//设置tokenfunction 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

<?php     if($_GET['act'] == 'out'){        setcookie("username",'',time()-1800);        setcookie("token",'',time()-1800);    }    $token = $_COOKIE['token'];    $username = $_COOKIE['username'];    if(!empty($username) &&!empty($token)&& ($_GET['act'] != 'out')){        exit("                            alert('用户已登录,请直接访问!');                location.href ='index.php';                    ");    }?>nbsp;html>            登录    *{        margin: 0px;        padding: 0;    }    .contater {        border: 1px solid #000;        width: 300px;        display: flex;        flex-direction: column;        margin: auto;    }    .contater>div {        margin-top: 20px;    }    h3 {        text-align: center;    }    .contater > .submit >input{        margin: 15px 140px;        font-size: 1.5rem;    }

登录

    

登录后复制

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("                                alert('请先登录');                loction.href ='login.php';                                            ");        }    }else{        exit("                            alert('请您先登录');                location.href='login.php';                    ");    }?>nbsp;html>              首页        * {      margin: 0px;      padding: 0px;      box-sizing: border-box;    }    h1 {      text-align: center;    }    a {      text-decoration: none;      font-size: 1.5rem;      color: darkgray;    }    a:hover {      background-color: lightskyblue;      border-radius: 5%;      /* font-size: 2rem; */    }    li {        list-style-type: none;        color: darkgray;    }    span {        color: darkgray;        font-size: 1.5rem;        margin-right: 15px;        color:burlywood    }    .top {      /* width: 960px; */      background-color: linen;      display: flex;      flex-flow: row nowrap;      justify-content: space-between;    }    .top > div {      margin: 10px 40px;    }    .column {      /* width: 960px; */      display: flex;      flex-flow: row nowrap;      justify-content: space-around;    }    .column > li {      margin-right: 65px;      padding: 0px 20px;    }        

陶转转首页

    
      
        
              
  • LOGO
  •           
  • 首页
  •           
  • 分类一
  •         
      
      
        欢迎您,        退出      
    
  

登录后复制

推荐学习:《PHP视频教程》

以上就是php 怎么实现七天免登录的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2077111.html

(0)
上一篇 2025年2月24日 08:58:38
下一篇 2025年2月18日 10:37:45

AD推荐 黄金广告位招租... 更多推荐

相关推荐

发表回复

登录后才能评论