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 输出双引号&quot;与单引号'的方法
May 09 PHP
PHP的array_diff()函数在处理大数组时的效率问题
Nov 27 PHP
在PHP中利用wsdl创建标准webservice的实现代码
Dec 07 PHP
php生成略缩图代码
Jul 16 PHP
php加密解密函数authcode的用法详细解析
Oct 28 PHP
PHP的fsockopen、pfsockopen函数被主机商禁用的解决办法
Jul 08 PHP
smarty模板引擎之配置文件数据和保留数据
Mar 30 PHP
PHP实现的构造sql语句类实例
Feb 03 PHP
超强多功能php绿色集成环境详解
Jan 25 PHP
详谈php中 strtr 和 str_replace 的效率问题
May 14 PHP
使用PHP访问RabbitMQ消息队列的方法示例
Jun 06 PHP
lnmp安装多版本PHP共存的方法详解
Aug 02 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
ThinkPHP水印功能实现修复PNG透明水印并增加JPEG图片质量可调整
2014/11/05 PHP
PHP+MySql+jQuery实现的&quot;顶&quot;和&quot;踩&quot;投票功能
2016/05/21 PHP
Yii 2.0自带的验证码使用经验分享
2017/06/19 PHP
用正则获取指定路径文件的名称
2007/02/27 Javascript
JQuery 国际象棋棋盘 实现代码
2009/06/26 Javascript
jquery获取iframe中的dom对象(两种方法)
2013/07/02 Javascript
JQuery与JS里submit()的区别示例介绍
2014/02/17 Javascript
js中的如何定位固定层的位置
2014/06/15 Javascript
jQuery插件expander实现图片翻转特效
2015/05/21 Javascript
Javascript编写俄罗斯方块思路及实例
2015/07/07 Javascript
AngularJS解决ng界面长表达式(ui-set)的方法分析
2016/11/07 Javascript
BootStrap 实现各种样式的进度条效果
2016/12/07 Javascript
ES5 ES6中Array对象去除重复项的方法总结
2017/04/27 Javascript
利用Javascript实现一套自定义事件机制
2017/12/14 Javascript
es6基础学习之解构赋值
2018/12/10 Javascript
Python兔子毒药问题实例分析
2015/03/05 Python
python 查找字符串是否存在实例详解
2017/01/20 Python
浅谈Matplotlib简介和pyplot的简单使用——文本标注和箭头
2018/01/09 Python
对python中大文件的导入与导出方法详解
2018/12/28 Python
python是否适合网页编程详解
2019/10/04 Python
Pytorch中的VGG实现修改最后一层FC
2020/01/15 Python
Python 输出详细的异常信息(traceback)方式
2020/04/08 Python
深入了解Python enumerate和zip
2020/07/16 Python
详解Selenium-webdriver绕开反爬虫机制的4种方法
2020/10/28 Python
Python 中 sorted 如何自定义比较逻辑
2021/02/02 Python
移动端开发HTML5页面点击按钮后出现闪烁或黑色背景的解决办法
2018/09/19 HTML / CSS
新西兰航空中国官网:Air New Zealand China
2018/07/24 全球购物
英国著名的美容护肤和护发产品购物网站:Lookfantastic
2020/11/23 全球购物
俄罗斯外国汽车和国产汽车配件网上商店:Движком
2020/04/19 全球购物
劳资人员岗位职责
2013/12/19 职场文书
给校长的建议书
2014/03/12 职场文书
单位工程竣工验收方案
2014/03/16 职场文书
对照四风自我剖析材料
2014/10/07 职场文书
公安领导班子四风问题个人整改措施思想汇报
2014/10/09 职场文书
派出所正风肃纪剖析材料
2014/10/10 职场文书
pycharm 如何查看某一函数源码的快捷键
2021/05/12 Python