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

 更新时间£º2018年10月15日 14:22:30   投稿£ºlaozhang   我要评论

在本篇文章里我们给大家分享了关于PHP如何用session来实现记录用户登陆信息的知识点£¬有兴趣的朋友们参考下¡£

PHP中session实现记录用户登录信息的问题£¬也是PHP面试题中比较常见的考点之一£¬是PHP学习者必须掌握的一个知识点¡£

对于初入门的PHP新手来说£¬或许有一定的难度¡£那么在之前的文章¡¾PHP中session如何存储及删除变量的¡¿中£¬?#21442;?#22823;家介绍了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来实现记录用户登录信息的程序¡£

我们可以通过浏览器访?#24335;?#34892;测试£¬首先我们可以在login登录界面£¬输入用户名密码£¬效果如下图£º

点击login登录£¬跳转到check.php¡£

点击确定

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

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

相关文章

最新评论

ÁÉÄþ35Ñ¡7¿ª½±½á¹û