zoukankan      html  css  js  c++  java
  • 记录用户登陆信息,你用PHP是如何来实现的

    对于初入门的PHP新手来说,或许有一定的难度。建议大家先看看PHP中session的基础含义,需要的朋友可以选择参考。

    下面我们就通过具体的代码示例,为大家详细的介绍PHP中session实现记录用户登录信息的具体方法。

    1.简单的登录界面代码示例:

    login.html

     1 <!DOCTYPE html>
     2 <html>
     3 <head>
     4  <meta charset="utf-8">
     5  <title>登录</title>
     6  <style type="text/css">
     7   body {
     8    background: url(images/bg.png);
     9   }
    10 
    11   .clear {
    12    clear: both;
    13   }
    14 
    15   .login {
    16     370px;
    17    margin: 100px auto 0px;
    18    text-align: center;
    19   }
    20 
    21   input[type="text"] {
    22     360px;
    23    height: 50px;
    24    border: none;
    25    background: #fff;
    26    border-radius: 10px;
    27    margin: 5px auto;
    28    padding-left: 10px;
    29    color: #745A74;
    30    font-size: 15px;
    31   }
    32 
    33   input[type="checkbox"] {
    34    float: left;
    35    margin: 5px 0px 0px;
    36   }
    37 
    38   span {
    39    float: left;
    40   }
    41 
    42   .botton {
    43     130px;
    44    height: 40px;
    45    background: #745A74;
    46    border-radius: 10px;
    47    text-align: center;
    48    color: #fff;
    49    margin-top: 30px;
    50    line-height: 40px;
    51   }
    52  </style>
    53 </head>
    54 <body>
    55 <div class="login">
    56  <form action="check.php" method="post">
    57   <img src="images/header.png"><br>
    58   <input type="text" name="username" placeholder="请输入用户名!" value=""><br>
    59   <input type="text" name="password" placeholder="请输入密码!" value=""><br>
    60   <input type="submit" class="botton" value="login">
    61  </form>
    62  <div class="clear"></div>
    63 </div>
    64 </body>
    65 
    66 </html>

    2.简单的用于连接数据库的PHP文件代码示例:

    db.php

     1 <?php
     2 
     3 $dbName = 'demo';
     4 $host = '127.0.0.1';
     5 $user = 'root';
     6 $password = 'root';
     7 
     8 $dsn = "mysql:host=$host;dbname=$dbName";
     9 $pdo = new PDO($dsn, $user, $password);
    10 
    11 function sql($table, $field = '*', $where = '')
    12 {
    13  global $pdo;
    14  $sql = 'select' . ' ' . $field . ' ' . 'from' . ' ' . $table . ' where ' . $where;
    15  $data = $pdo->query($sql)->fetch();
    16  return $data;
    17 }

    这里我们定义了一个sql方法用来查询数据库表中字段,并返回数据。

    那么如果有新手不清楚PHP连接数据库的方法,可以参考学习一下【PHP怎么连接Mysql数据库】的文章

    3.检验用户登录信息的代码示例:

    check.php

     1 <?php
     2 session_start();
     3 include "db.php";
     4 @$name = $_POST['username'];
     5 @$pas = $_POST['password'];
     6 
     7 $row = sql('user', '*', "username = '$name'");
     8 if (!$row) {
     9  return "用户名不存在!请检查用户名~~";
    10 }
    11 
    12 if ($row['password'] == $pas) {
    13  $_SESSION['username'] = "$name";
    14  echo "<script>
    15  alert('登录成功!正在跳转...')
    16 </script>";
    17  echo "<a href='index.php'>如果跳转失败请点击跳转~~</a>";
    18  header("Refresh:1;url=index.php");
    19 }

    这里我们要开启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登录界面,输入用户名密码,效果如下

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

    点击确定

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

  • 相关阅读:
    Oracle中有大量的sniped会话
    Error 1130: Host '127.0.0.1' is not allowed to connect to this MySQL server
    汉字转换为拼音以及缩写(javascript)
    高效率随机删除数据(不重复)
    vs2010 舒服背景 优雅字体 配置
    mvc中的ViewData用到webfrom中去
    jquery ajax return值 没有返回 的解决方法
    zShowBox (图片放大展示jquery版 兼容性好)
    动感效果的TAB选项卡 jquery 插件
    loading 加载提示······
  • 原文地址:https://www.cnblogs.com/a609251438/p/11945538.html
Copyright © 2011-2022 走看看