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><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 = '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; }
这里我们定义了一个sql方法用来查询数据库表中字段,并返回数据。
那么如果有新手不清楚PHP连接数据库的方法,可以参考学习这篇文章【PHP怎么连接Mysql数据库】。
3.检验用户登录信息的代码示例:
check.php
<?php session_start(); include db.php; @$name = $_POST['username']; @$pas = $_POST['password']; $row = sql('user', '*', username = '$name'); if (!$row) { return 用户名不存在!请检查用户名~~; } if ($row['password'] == $pas) { $_SESSION['username'] = $name; echo <script> alert('登录成功!正在跳转...') </script>; echo <a href='index.php'>如果跳转失败请点击跳转~~</a>; header(Refresh:1;url=index.php); }
这里我们要开启session,并用include引入数据库,然后用if语句判断查询提交过来的数据并将用户名提交给session来记录,即判断用户名密码是否存在及是否相等。
4.登录成功后跳转的页面代码示例:
index.php
<?php echo <h1>这里是主页</h1>; session_start(); $name = $_SESSION['username']; if ($name) { echo <script> alert(\尊敬的$name ,欢迎回来!!\); </script>; }else{ echo <script> alert('您还尚未登录!请返回登录~~') </script>; echo <a href='index.php'>如果跳转失败请点击跳转~~</a>; header(Refresh:1;url=login.html); }
那么上述代码login.html,db.php,check.php和index.php就是一个简单的用session来实现记录用户登录信息的程序。
我们可以通过浏览器访问进行测试,首先我们可以在login登录界面,输入用户名密码,效果如下图:
点击login登录,跳转到check.php。
点击确定
如果跳转失败就点击上图中链接,如果跳转成功,则直接跳转到index.php主页面,显示如下图:
本篇文章就是关于PHP中session来实现记录用户登录信息的具体方法介绍,具有一定的参考价值,希望对需要的朋友有所帮助!
想要了解更多的PHP知识,可以关注编程之家PHP教程,欢迎大家参考学习!
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。