php中存储用户ID和密码到mysql数据库的方法


Posted in PHP onFebruary 06, 2013

创建用户信息表:

CREATE TABLE tbl_auth_user (
user_id VARCHAR(10) NOT NULL,
user_password CHAR(32) NOT NULL,
PRIMARY KEY (user_id)
);
INSERT INTO tbl_auth_user (user_id, user_password) VALUES ('theadmin', PASSWORD('chumbawamba'));
INSERT INTO tbl_auth_user (user_id, user_password) VALUES ('webmaster', PASSWORD('webmistress'));

我们将使用相同的html代码来创建登录表单在上述示例中创建的。我们只需要修改登录过程有点。
登录脚本:
<?php
// 我们必须永远不会忘记启动会话
session_start();
$errorMessage = '';
if (isset($_POST['txtUserId']) && isset($_POST['txtPassword'])) {
   include 'library/config.php';
   include 'library/opendb.php';
   $userId = $_POST['txtUserId'];
   $password = $_POST['txtPassword'];
   // 检查用户id和密码组合存在于数据库
   $sql = "SELECT user_id 
           FROM tbl_auth_user
           WHERE user_id = '$userId' 
                 AND user_password = PASSWORD('$password')";
   $result = mysql_query($sql) 
             or die('Query failed. ' . mysql_error());
   if (mysql_num_rows($result) == 1) {
      // sessionthe设置用户id和密码匹配,
      // 设置会话
      $_SESSION['db_is_logged_in'] = true;
      // 在登录后我们转到主页
      header('Location: main.php');
      exit;
   } else {
      $errorMessage = 'Sorry, wrong user id / password';
   }
   include 'library/closedb.php';
}
?>

/ /…相同的html登录表单前一个示例一样

而不是检查用户id和密码对硬编码的信息我们查询数据库,如果这两个存在于数据库使用SELECT查询。如果我们发现一个匹配我们设置会话变量和移动到主页。注意,会话的名字是前缀 “db”使它不同于先前的示例。

在接下来的两个脚本(主要。php和注销。php)代码类似于前一个。唯一的区别是会话名称。这是为这两个的代码

<?php
session_start();
//是一个访问这个页面登录呢?
if (!isset($_SESSION['db_is_logged_in']) 
   || $_SESSION['db_is_logged_in'] !== true) {
   // 没有登录,返回到登录页面
   header('Location: login.php');
   exit;
}
?>

/ /…这里的一些html代码
<?php
session_start();
// 如果用户已登录,设置会话
if (isset($_SESSION['db_is_logged_in'])) {
   unset($_SESSION['db_is_logged_in']);
}
// 现在,用户登录,
// 去登录页面
header('Location: login.php');
?>
PHP 相关文章推荐
php Http_Template_IT类库进行模板替换
Mar 19 PHP
PHP学习笔记之二
Jan 17 PHP
phpExcel中文帮助手册之常用功能指南
Aug 18 PHP
PHP中的替代语法简介
Aug 22 PHP
PHP中file_exists()判断中文文件名无效的解决方法
Nov 12 PHP
PHP获取昨天、今天及明天日期的方法
Feb 03 PHP
php制作简单模版引擎
Apr 07 PHP
PHP QRCODE生成彩色二维码的方法
May 19 PHP
PHP实现的Redis多库选择功能单例类
Jul 27 PHP
PHP hebrev()函数用法讲解
Feb 21 PHP
ThinkPHP框架整合微信支付之JSAPI模式图文详解
Apr 09 PHP
phpStudy vscode 搭建debug调试的教程详解
Jul 28 PHP
php中使用__autoload()自动加载未定义类的实现代码
Feb 06 #PHP
php中使用preg_match_all匹配文章中的图片
Feb 06 #PHP
php中使用addslashes函数报错问题的解决方法
Feb 06 #PHP
深入理解ob_flush和flush的区别(ob_flush()与flush()使用方法)
Feb 06 #PHP
php中设置index.php文件为只读的方法
Feb 06 #PHP
php中选择什么接口(mysql、mysqli)访问mysql
Feb 06 #PHP
php连接mssql的一些相关经验及注意事项
Feb 05 #PHP
You might like
深入探讨:Nginx 502 Bad Gateway错误的解决方法
2013/06/03 PHP
PHP 冒泡排序 二分查找 顺序查找 二维数组排序算法函数的详解
2013/06/25 PHP
PHP中鲜为人知的10个函数
2014/02/28 PHP
Linux下安装PHP MSSQL扩展教程
2014/10/24 PHP
一键生成各种尺寸Icon的php脚本(实例)
2017/02/08 PHP
RR vs IO BO3 第二场2.13
2021/03/10 DOTA
javascript实现划词标记+划词搜索功能
2007/03/06 Javascript
一段实现页面上的图片延时加载的js代码
2010/02/11 Javascript
JS获取当前日期和时间的简单实例
2013/11/19 Javascript
Bootstrap每天必学之栅格系统(布局)
2015/11/25 Javascript
Bootstrap创建可折叠的组件
2016/02/23 Javascript
JavaScript绑定事件监听函数的通用方法
2016/05/14 Javascript
JS 数字转换为大写金额的简单实例
2016/08/04 Javascript
轻松掌握JavaScript策略模式
2016/08/25 Javascript
HTML5+Canvas调用手机拍照功能实现图片上传(上)
2017/04/21 Javascript
使用jQuery实现购物车结算功能
2017/08/15 jQuery
深入理解React中何时使用箭头函数
2017/08/23 Javascript
js原生方法被覆盖,从新赋值原生的方法
2018/01/02 Javascript
Hexo已经看腻了,来手把手教你使用VuePress搭建个人博客
2018/04/26 Javascript
vue实现户籍管理系统
2020/05/29 Javascript
v-slot和slot、slot-scope之间相互替换实例
2020/09/04 Javascript
[01:32:10]NAVI vs VG Supermajor 败者组 BO3 第一场 6.5
2018/06/06 DOTA
python操作列表的函数使用代码详解
2017/12/28 Python
Python用于学习重要算法的模块pygorithm实例浅析
2018/08/16 Python
Python生成器的使用方法和示例代码
2019/03/04 Python
Python闭包与装饰器原理及实例解析
2020/04/30 Python
HTML5 Canvas的常用线条属性值总结
2016/03/17 HTML / CSS
施华洛世奇巴西官网:SWAROVSKI巴西
2019/12/03 全球购物
英国顶尖手表珠宝品牌独家授权经销商:HS Johnson
2020/10/28 全球购物
环保专业大学生职业规划设计
2014/01/10 职场文书
万年牢教学反思
2014/02/15 职场文书
《秋姑娘的信》教学反思
2014/02/28 职场文书
2014年巴西世界杯口号
2014/06/05 职场文书
大学生交通专业求职信
2014/09/01 职场文书
大学运动会加油稿200字(5篇)
2014/09/27 职场文书
Z-Order加速Hudi大规模数据集方案分析
2022/03/31 Servers