PHP cookie实现记录用户登陆信息的方法(图文+视频)

藏色散人
藏色散人 原创
2018-10-18 15:55:52 6056浏览

本篇文章主要给大家介绍PHP使用cookie来实现记录用户登录信息的方法。

cookie也就是储存在用户本地终端上的数据。那么在之前的文章【PHP中cookie怎么记录及删除变量?】中,已经为大家详细介绍过cookie是什么以及基础操作用法。需要的朋友可以先了解参考下。

cookie的使用除了在我们日常项目开发中被需要,在我们PHP面试过程中也是较为常见的一个考点,大家是很有必须学习掌握的。

下面我们就结合具体的代码示例,给大家介绍cookie实现记录用户登录信息的方法。

以下方法与之前介绍的session实现记录用户登录信息的思路及使用例子基本是一样的,需要的朋友也可以选择了解下【PHP如何用session来记录用户登陆信息?】这篇文章。

一、登录界面代码示例:

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>登录</title>
    <style type="text/css">
        body {
            background: url(images/bg.png);
        }
 
        .clear {
            clear: both;
        }
 
        .login {
            width: 370px;
            margin: 100px auto 0px;
            text-align: center;
        }
 
        input[type="text"] {
            width: 360px;
            height: 50px;
            border: none;
            background: #fff;
            border-radius: 10px;
            margin: 5px auto;
            padding-left: 10px;
            color: #745A74;
            font-size: 15px;
        }
 
        input[type="checkbox"] {
            float: left;
            margin: 5px 0px 0px;
        }
 
        span {
            float: left;
        }
 
        .botton {
            width: 130px;
            height: 40px;
            background: #745A74;
            border-radius: 10px;
            text-align: center;
            color: #fff;
            margin-top: 30px;
            line-height: 40px;
        }
    </style>
</head>
<body>
<div class="login">
    <form action="check.php" method="post">
        <img src="images/header.png"><br>
        <input type="text" name="username" placeholder="请输入用户名!" value=""><br>
        <input type="text" name="password" placeholder="请输入密码!" value=""><br>
        <input type="submit" class="botton" value="login">
    </form>
    <div class="clear"></div>
</div>
</body>
</html>

二、连接数据库的PHP文件代码示例:

<?php
$dbName = 'demo';
$host = '127.0.0.1';
$user = 'root';
$password = 'root';
 
$dsn = "mysql:host=$host;dbname=$dbName";
$pdo = new PDO($dsn, $user, $password);
 
function sql($table, $field = '*', $where = '')
{
    global $pdo;
    $sql = 'select' . ' ' . $field . ' ' . 'from' . ' ' . $table . ' where ' . $where;
    $data = $pdo->query($sql)->fetch();
    return $data;
}

三、用户登录信息的代码示例

<?php
include "db.php";
@$name = $_POST['username'];
@$pas = $_POST['password'];

$row = sql('user', '*', "username = '$name'");
if (!$row) {
    echo "<script>
    alert('用户名不存在!请检查用户名~~')
</script>";
    header("Refresh:1;url=login.html");
    return;
}

if ($row['password'] == $pas) {
    setcookie("username", "$name", time() + 36000);
    echo "<script>
    alert('登录成功!正在跳转...')
</script>";
    echo "<a href='index.php'>如果跳转失败请点击跳转~~</a>";
    header("Refresh:1;url=index.php");
    return;
}
echo "密码错误!请检查密码";
header("Refresh:1;url=login.html");

这里我们将用户登录成功后的信息存储到cookie中,并且保留时间为10个小时。

四、主页代码示例:

<?php
echo "<h1>这里是主页</h1>";
@$name = $_COOKIE['username'];
echo $_COOKIE['username'];
if ($name) {
    echo "<script>
     alert(\"尊敬的$name ,欢迎回来!!\");
</script>";
}else{
    echo "<script>
    alert('您还尚未登录!请返回登录~~')
</script>";
    echo "<a href='login.html'>如果跳转失败请点击跳转~~</a>";
    header("Refresh:1;url=login.html");
}

通过浏览器访问,效果实现如下图所示:

录制_2018_10_18_14_11_28_851.gif

当然我们可以检验一下用户信息是否成功存储到cookie中,在index.php中,直接写上如下代码:

<?php
echo $_COOKIE['username'];

结果如下图:

945671b53d0b18bfdd4e23ed130419f.png

如图我们输出了cookie中所储存的用户名信息,也就表示用户信息已经存储到cookie中了。

本篇文章就是关于PHP使用cookie来实现记录用户登录信息的方法介绍,希望对需要的朋友有所帮助!

想要了解更多PHP知识,可以关注PHP中文网PHP视频教程,欢迎大家参考学习!

以上就是PHP cookie实现记录用户登陆信息的方法(图文+视频)的详细内容,更多请关注php中文网其它相关文章!

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