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 相关文章推荐
真正的ZIP文件操作类(php)
Jul 21 PHP
php学习之 认清变量的作用范围
Jan 26 PHP
php中日期加减法运算实现代码
Dec 08 PHP
PHP面向对象三大特点学习(充分理解抽象、封装、继承、多态)
May 07 PHP
codeigniter中测试通过的分页类示例
Apr 17 PHP
php 5.6版本中编写一个PHP扩展的简单示例
Jan 20 PHP
PHP判断浏览器、判断语言代码分享
Mar 05 PHP
PHP CURL post数据报错 failed creating formpost data
Oct 16 PHP
PHP实现限制IP访问的方法
Apr 20 PHP
YII2自动登录Cookie总是失效的解决方法
Jun 28 PHP
php ajax数据传输和响应方法
Aug 21 PHP
50个优秀经典PHP算法大集合 附源码
Aug 26 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
一台收音机,让一家人都笑逐颜开!
2020/08/21 无线电
[原创]PHP实现生成vcf vcard文件功能类定义与使用方法详解【附demo源码下载】
2017/09/02 PHP
PHP+AJAX 投票器功能
2017/11/11 PHP
使用laravel的migrate创建数据表的方法
2019/09/30 PHP
从面试题学习Javascript 面向对象(创建对象)
2012/03/30 Javascript
JQuery学习笔录 简单的JQuery
2012/04/09 Javascript
jQuery写fadeTo示例代码
2014/02/21 Javascript
JavaScript中switch判断容易犯错的一个细节
2014/08/27 Javascript
angularjs学习笔记之三大模块(modal,controller,view)
2015/09/26 Javascript
js实现人民币大写金额形式转换
2016/04/27 Javascript
jQuery深拷贝Json对象简单示例
2016/07/06 Javascript
利用JS提交表单的几种方法和验证(必看篇)
2016/09/17 Javascript
js手机号批量滚动抽奖实现代码
2020/04/17 Javascript
jquery ui sortable拖拽后保存位置
2017/04/27 jQuery
javascript实现延时显示提示框效果
2017/06/01 Javascript
浅谈react.js中实现tab吸顶效果的问题
2017/09/06 Javascript
原生JavaScript实现的简单放大镜效果示例
2018/02/07 Javascript
Node.js使用MySQL连接池的方法实例
2018/02/11 Javascript
JS获取url参数,JS发送json格式的POST请求方法
2018/03/29 Javascript
详解Vue用cmd创建项目
2019/02/12 Javascript
微信小程序列表时间戳转换实现过程解析
2019/10/12 Javascript
[03:39]2015国际邀请赛主赛事首日精彩回顾
2015/08/05 DOTA
netbeans7安装python插件的方法图解
2013/12/24 Python
python操作excel的包(openpyxl、xlsxwriter)
2018/06/11 Python
django模板加载静态文件的方法步骤
2019/03/01 Python
Python中常用的8种字符串操作方法
2019/05/06 Python
python实现监控阿里云账户余额功能
2019/12/16 Python
Dillard’s百货官网:Dillards.com
2018/05/26 全球购物
澳大利亚排名第一的狂热牛仔品牌:ONETEASPOON
2018/11/20 全球购物
Pretty Green美国:英式摇滚服饰风格代表品牌之一
2019/01/23 全球购物
酒店门卫岗位职责
2013/12/29 职场文书
餐饮部总监岗位职责范文
2014/02/13 职场文书
百年校庆节目主持词
2014/03/27 职场文书
设计大赛策划方案
2014/06/13 职场文书
个人四风问题对照检查材料
2014/10/01 职场文书
2014年大学宣传部工作总结
2014/12/19 职场文书