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过滤危险html代码
Aug 18 PHP
php Http_Template_IT类库进行模板替换
Mar 19 PHP
PHP中使用cURL实现Get和Post请求的方法
Mar 13 PHP
编译php 5.2.14+fpm+memcached(具体操作详解)
Jun 18 PHP
浅析PHP原理之变量分离/引用(Variables Separation)
Aug 09 PHP
php switch语句多个值匹配同一代码块的实现
Mar 03 PHP
PHP实现通用alert函数的方法
Mar 11 PHP
PHP实现将MySQL重复ID二维数组重组为三维数组的方法
Aug 01 PHP
laravel 中如何使用ajax和vue总结
Aug 16 PHP
PHP学习笔记之session
May 06 PHP
php微信开发之音乐回复功能
Jun 14 PHP
Laravel 模型使用软删除-左连接查询-表起别名示例
Oct 24 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
PHP4实际应用经验篇(1)
2006/10/09 PHP
比较全面的PHP数组的使用方法小结
2010/09/23 PHP
PHP框架Swoole定时器Timer特性分析
2014/08/19 PHP
叫你如何修改Nginx与PHP的文件上传大小限制
2014/09/10 PHP
django中的ajax组件教程详解
2018/10/18 PHP
Jquery ajax不能解析json对象,报Invalid JSON错误的原因和解决方法
2010/03/27 Javascript
js汉字转拼音实现代码
2013/02/06 Javascript
jqGrid日期格式的判断示例代码(开始日期与结束日期)
2013/11/08 Javascript
下拉列表select 由左边框移动到右边示例
2013/12/04 Javascript
CSS中position属性之fixed实现div居中
2015/12/14 Javascript
JavaScript &amp; jQuery完美判断图片是否加载完毕
2017/01/08 Javascript
jQuery插件ajaxFileUpload使用详解
2017/01/10 Javascript
js实现一个猜数字游戏
2017/03/31 Javascript
用angular实现多选按钮的全选与反选实例代码
2017/05/23 Javascript
vue2.0移除或更改的一些东西(移除index key)
2017/08/28 Javascript
vue使用websocket的方法实例分析
2019/06/22 Javascript
vue项目接口管理,所有接口都在apis文件夹中统一管理操作
2020/08/13 Javascript
JavaScript使用setTimeout实现倒计时效果
2021/02/19 Javascript
[58:32]EG vs Liquid 2018国际邀请赛小组赛BO2 第一场 8.18
2018/08/19 DOTA
深入解析Python编程中JSON模块的使用
2015/10/15 Python
Python使用PyCrypto实现AES加密功能示例
2017/05/22 Python
python简单商城购物车实例代码
2018/03/15 Python
python之验证码生成(gvcode与captcha)
2019/01/02 Python
使用Pyhton集合set()实现成果查漏的例子
2019/11/24 Python
Python爬虫谷歌Chrome F12抓包过程原理解析
2020/06/04 Python
办公室文秘岗位职责
2013/11/15 职场文书
电子商务个人职业生涯规划范文
2014/02/12 职场文书
《苏珊的帽子》教学反思
2014/04/07 职场文书
老公给老婆的保证书
2014/04/28 职场文书
毕业大学生自荐信
2014/06/17 职场文书
卫生标语大全
2014/06/21 职场文书
个性车贴标语
2014/06/24 职场文书
办理房产过户的委托书
2014/09/14 职场文书
反四风个人对照检查材料
2014/09/26 职场文书
实习证明模板
2015/06/16 职场文书
优质护理服务心得体会
2016/01/22 职场文书