PHP实现用session来实现记录用户登陆信息


Posted in PHP onOctober 15, 2018

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登录界面,输入用户名密码,效果如下图:

PHP实现用session来实现记录用户登陆信息

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

PHP实现用session来实现记录用户登陆信息

点击确定

PHP实现用session来实现记录用户登陆信息

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

PHP实现用session来实现记录用户登陆信息

PHP实现用session来实现记录用户登陆信息

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

PHP 相关文章推荐
一个php作的文本留言本的例子(二)
Oct 09 PHP
php学习笔记 PHP面向对象的程序设计
Jun 13 PHP
基于MySQL分区性能的详细介绍
May 02 PHP
探讨Smarty中如何获取数组的长度以及smarty调用php函数的详解
Jun 20 PHP
php中的常用魔术方法总结
Aug 02 PHP
浅析linux下apache服务器的配置和管理
Aug 10 PHP
php实现基于微信公众平台开发SDK(demo)扩展的方法
Dec 22 PHP
PHP实现指定字段的多维数组排序函数分享
Mar 09 PHP
Yii框架实现邮箱激活的方法【数字签名】
Oct 18 PHP
PDO::lastInsertId讲解
Jan 29 PHP
PHP利用pdo_odbc实现连接数据库示例【基于ThinkPHP5.1搭建的项目】
May 13 PHP
php操作redis数据库常见方法实例总结
Feb 20 PHP
PHP中使用CURL发送get/post请求上传图片批处理功能
Oct 15 #PHP
深入理解 PHP7 中全新的 zval 容器和引用计数机制
Oct 15 #PHP
php实现二叉树中和为某一值的路径方法
Oct 14 #PHP
php中青蛙跳台阶的问题解决方法
Oct 14 #PHP
PHP通过文件路径获取文件名的实例代码
Oct 14 #PHP
ThinkPHP中获取指定日期后工作日的具体日期方法
Oct 14 #PHP
php实现数组中出现次数超过一半的数字的统计方法
Oct 14 #PHP
You might like
PHP读取XML值的代码(推荐)
2011/01/01 PHP
php自定义函数实现JS的escape的方法示例
2016/07/07 PHP
老生常谈PHP中的数据结构:DS扩展
2017/07/17 PHP
PHP面向对象程序设计中的self、static、parent关键字用法分析
2019/08/14 PHP
javascript编程起步(第四课)
2007/01/10 Javascript
js 方法实现返回多个数据的代码
2009/04/30 Javascript
心扬JS分页函数代码
2010/09/10 Javascript
jQuery实现表头固定效果的实例代码
2013/05/24 Javascript
js 文本滚动效果的实例代码
2013/08/17 Javascript
jQuery中end()方法用法实例
2015/01/08 Javascript
JavaScript实现将数组中所有元素连接成一个字符串的方法
2015/04/06 Javascript
Jquery动态添加输入框的方法
2015/05/29 Javascript
JavaScript中的继承之类继承
2016/05/01 Javascript
JavaScript 函数的执行过程
2016/05/09 Javascript
Vue方法与事件处理器详解
2016/12/01 Javascript
简单实现js进度条加载效果
2020/03/25 Javascript
Vue在H5 项目中使用融云进行实时个人单聊通讯
2020/12/14 Vue.js
[01:02:25]2014 DOTA2华西杯精英邀请赛 5 24 iG VS DK
2014/05/26 DOTA
使用PyV8在Python爬虫中执行js代码
2017/02/16 Python
Python+matplotlib实现计算两个信号的交叉谱密度实例
2018/01/08 Python
python MySQLdb使用教程详解
2018/03/20 Python
Python日期格式和字符串格式相互转换的方法
2020/02/18 Python
Python验证码截取识别代码实例
2020/05/16 Python
matplotlib部件之套索Lasso的使用
2021/02/24 Python
美国知名的在线旅游服务网站:Priceline
2016/07/23 全球购物
欧洲最大的婴幼儿服装及内衣公司:Petit Bateau(小帆船)
2016/08/16 全球购物
Joules官网:女士、男士和儿童服装和鞋类
2018/10/23 全球购物
大学四年职业生涯规划书范文
2014/01/02 职场文书
文秘应聘自荐书范文
2014/02/18 职场文书
法制宣传实施方案
2014/03/13 职场文书
最新优秀教师个人先进事迹材料
2014/05/06 职场文书
奥巴马的演讲稿
2014/05/15 职场文书
安全环保演讲稿
2014/08/28 职场文书
党员个人公开承诺书
2014/08/29 职场文书
领导干部学习三严三实心得体会
2016/01/05 职场文书
python小程序之飘落的银杏
2021/04/17 Python