0
点赞
收藏
分享

微信扫一扫

php和session实现简单的登录记忆

E_topia 2022-02-02 阅读 66
php

要求:登陆框能实现登录状态的记忆。

上代码:

<?php 
    session_start();
    if (isset($_SESSION['login_user'])) //判断是否登录
    {
	$link = 'logout.php';
	echo "<a href='{$link}' title=''>点我清除登录信息<br></a>";
        die('已登录!当前登录用户为:' . $_SESSION['login_user']);
    }
    if ($_SERVER['REQUEST_METHOD'] === 'POST') //判断是否为POST请求
    {
        if (!isset($_POST['username']) || empty($_POST['username'])) //检查是否输入用户名
        {
            die('请输入用户名!');
        }
        if (!isset($_POST['password']) || empty($_POST['password'])) //检查是否输入密码
        {
            die('请输入密码!');
        }
        $data = ['username' => 'user01', 'password' => md5('123456')]; //模拟数据
        if ($_POST['username'] === $data['username']) //检查用户名是否正确
        {
            if (md5($_POST['password']) === $data['password']) //检查密码是否正确
            {
                //保存登录状态
                $_SESSION['login_user'] = $_POST['username'];
		$link = 'logout.php';
		echo "<a href='{$link}' title=''>点我清除登录信息<br></a>";
                die('恭喜你登录成功!');
            }
        }
        die('用户名或密码不正确!');//用户名或密码不正确
    }
?>
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="gb2312">
    <title>登录测试</title>
</head>
<body>
    <!-- action=""是表示在当前页运行 -->
    <form action="" method="post">   
        <input type="text" name="username" placeholder="请输入用户名!">
        <input type="password" name="password" placeholder="请输入密码!">
        <button type="submit">登录</button>
    </form>
</body>
</html>

将上述代码保存为index.php。在继续写清除session页面:

<?php
session_start();
session_unset();
$link = 'index.php';
echo "登录信息已清除<br>";
echo "<a href='{$link}' title=''>点我返回登录界面</a>";

?>

将上述代码保存为logout.php。两个文件都部署在wampserver2上,测试运行:

打开localhost可以显示:

输入预设的用户名user01 密码123456 可以显示:

 

关闭页面,重新打开localhost:

如果不想保持登录状态,则点击清除:

 

点击返回,则进入登录界面,实现对session的清除。

有问题可以站内联系我。

 

 

举报

相关推荐

0 条评论