前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >PHP学习笔记——用户登录使用cookie

PHP学习笔记——用户登录使用cookie

作者头像
行云博客
发布2020-07-13 10:45:28
1.1K0
发布2020-07-13 10:45:28
举报
文章被收录于专栏:行云博客行云博客
前端页面index.php
<!doctype html>
<html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>登陆</title>
    </head>
    <body>
        <div align="center">
        <form name="login" action="index.php" method="post">
                <p>用户名<input type=text name="name"></p>
                <p>密 码<input type=password name="password"></p>
                <p><input type="submit" name="submit" value="登录"> 
                </p>
            </form>
<?php
$name = $_POST["name"];
$password = $_POST["password"];
if(isset($name) && isset($password)){  
    setcookie("name","$name",time()+3600);
    setcookie("password","$password",time()+3600);
    header("refresh:0;url=success.php");
}
?>
            </div>
    </body>
</html>
后端判断success.php
<?php
if (!isset($_COOKIE["name"]) || !isset($_COOKIE["password"])) {
    echo('账号密码不能为空');
    header("refresh:1;url=index.php");
}
elseif ($_COOKIE["name"]!='xiaowang'||$_COOKIE["password"]!='wangmima') {
    echo '账号密码不正确';
    header("refresh:1;url=index.php");
}
else{
    echo "登录成功";
    echo '<a href="logout.php"><input type="submit" name="submit" value="注销"></a>';
}
?>

当用户没有输入账号密码时,将会显示账号密码不能为空,且1秒后返回登录页面

同理,账号不为xiaowang,密码不为wangmima时返回账号密码

输入成功时跳转到成功页面

注销页面logout.php
<?php  
if (isset($_COOKIE["name"]) || isset($_COOKIE["password"])) {
    setcookie("name", "", time()-3600);
    setcookie("password", "", time()-3600);
    echo '<span id="seconds">3</span>秒后返回到首页
<script type="text/javascript">
    
    // 获取秒数显示id
    var seconds = document.getElementById("seconds");
    // 设置秒数
    var num = 3;
    var timer = setInterval(function () {
        num--;
        seconds.innerText = num;
        if(num == 0){
            window.location = "index.php";
        }
    },1000)
</script>';
}
else{
    echo '未登录';
    echo '<br>';
     echo '<span id="seconds">3</span>秒后返回到首页

<script type="text/javascript">
    
    // 获取秒数显示id
    var seconds = document.getElementById("seconds");
    // 设置秒数
    var num = 3;
    var timer = setInterval(function () {
        num--;
        seconds.innerText = num;
        if(num == 0){
            window.location = "index.php";
        }
    },1000)
</script>';
}

   

?>

当页面存在cookie时,设置时效为当前时间减一小时,即cookie过期。

不存在cookie时,3秒后将会跳转到登录页面

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2020-07-09 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前端页面index.php
  • 后端判断success.php
  • 注销页面logout.php
相关产品与服务
访问管理
访问管理(Cloud Access Management,CAM)可以帮助您安全、便捷地管理对腾讯云服务和资源的访问。您可以使用CAM创建子用户、用户组和角色,并通过策略控制其访问范围。CAM支持用户和角色SSO能力,您可以根据具体管理场景针对性设置企业内用户和腾讯云的互通能力。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档