登录  /  注册

PHP如何用session来记录用户登陆信息?(图文+视频)

藏色散人
发布: 2018-10-15 14:08:38
原创
7666人浏览过

本篇文章主要给大家介绍用php中session来实现记录用户登录信息的具体方法。

PHP中session实现记录用户登录信息的问题,也是PHP面试题中比较常见的考点之一,是PHP学习者必须掌握的一个知识点。

对于初入门的PHP新手来说,或许有一定的难度。那么在之前的文章【PHP中session如何存储及删除变量的】中,也为大家介绍了PHP中session的基础含义,需要的朋友可以选择参考。

下面我们就通过具体的代码示例,为大家详细的介绍PHP中session实现记录用户登录信息的具体方法。

1.简单的登录界面代码示例:

login.html

<!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" alt="PHP如何用session来记录用户登陆信息?(图文+视频)" ><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>
登录后复制

2.简单的用于连接数据库的PHP文件代码示例:

db.php

<?php

$dbName = &#39;demo&#39;;
$host = &#39;127.0.0.1&#39;;
$user = &#39;root&#39;;
$password = &#39;root&#39;;

$dsn = "mysql:host=$host;dbname=$dbName";
$pdo = new PDO($dsn, $user, $password);

function sql($table, $field = &#39;*&#39;, $where = &#39;&#39;)
{
    global $pdo;
    $sql = &#39;select&#39; . &#39; &#39; . $field . &#39; &#39; . &#39;from&#39; . &#39; &#39; . $table . &#39; where &#39; . $where;
    $data = $pdo->query($sql)->fetch();
    return $data;
}
登录后复制

这里我们定义了一个sql方法用来查询数据库表中字段,并返回数据

那么如果有新手不清楚PHP连接数据库的方法,可以参考学习这篇文章PHP怎么连接Mysql数据库】。

3.检验用户登录信息的代码示例:

check.php

<?php
session_start();
include "db.php";
@$name = $_POST[&#39;username&#39;];
@$pas = $_POST[&#39;password&#39;];

$row = sql(&#39;user&#39;, &#39;*&#39;, "username = &#39;$name&#39;");
if (!$row) {
    return "用户名不存在!请检查用户名~~";
}

if ($row[&#39;password&#39;] == $pas) {
    $_SESSION[&#39;username&#39;] = "$name";
    echo "<script>
    alert(&#39;登录成功!正在跳转...&#39;)
</script>";
    echo "<a href=&#39;index.php&#39;>如果跳转失败请点击跳转~~</a>";
    header("Refresh:1;url=index.php");
}
登录后复制

这里我们要开启session,并用include引入数据库,然后用if语句判断查询提交过来的数据并将用户名提交给session来记录,即判断用户名密码是否存在及是否相等。

4.登录成功后跳转的页面代码示例:

index.php

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

那么上述代码login.html,db.php,check.php和index.php就是一个简单的用session来实现记录用户登录信息的程序。

我们可以通过浏览器访问进行测试,首先我们可以在login登录界面,输入用户名密码,效果如下图:

b5a7f42c4c954a81e68cdef85f06fb6.png

点击login登录,跳转到check.php。

c06a1078f63bd433ecc7ff21b39ba7b.png

点击确定

eadf10fbadba88c36f8fa0e1d0710db.png

如果跳转失败就点击上图中链接,如果跳转成功,则直接跳转到index.php主页面,显示如下图:

4aca82f7f977c57f33f8861968b7af8.png

08940cc77470e5d132bc79f8a70265f.png

本篇文章就是关于PHP中session来实现记录用户登录信息的具体方法介绍,具有一定的参考价值,希望对需要的朋友有所帮助!

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

以上就是PHP如何用session来记录用户登陆信息?(图文+视频)的详细内容,更多请关注php中文网其它相关文章!

智能AI问答
PHP中文网智能助手能迅速回答你的编程问题,提供实时的代码和解决方案,帮助你解决各种难题。不仅如此,它还能提供编程资源和学习指导,帮助你快速提升编程技能。无论你是初学者还是专业人士,AI智能助手都能成为你的可靠助手,助力你在编程领域取得更大的成就。
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
最新问题
关于CSS思维导图的课件在哪? 课件
凡人来自于2024-04-16 10:10:18
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2024 //m.sbmmt.com/ All Rights Reserved | php.cn | 湘ICP备2023035733号