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 相关文章推荐
mysql_fetch_row,mysql_fetch_array,mysql_fetch_assoc的区别
Apr 24 PHP
PHP隐形一句话后门,和ThinkPHP框架加密码程序(base64_decode)
Nov 02 PHP
ThinkPHP3.1新特性之内容解析输出详解
Jun 19 PHP
php基于session实现数据库交互的类实例
Aug 03 PHP
Symfony2函数用法实例分析
Mar 18 PHP
php实现的一段简单概率相关代码
May 30 PHP
PHP实现导出带样式的Excel
Aug 28 PHP
CentOS 7.2 下编译安装PHP7.0.10+MySQL5.7.14+Nginx1.10.1的方法详解(mini版本)
Sep 01 PHP
php版微信公众平台回复中文出现乱码问题的解决方法
Sep 22 PHP
PHP使用Redis替代文件存储Session的方法
Feb 15 PHP
tp5(thinkPHP5框架)使用DB实现批量删除功能示例
May 28 PHP
常见的5个PHP编码小陋习以及优化实例讲解
Feb 27 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
探讨各种PHP字符串函数的总结分析
2013/06/05 PHP
PHP检测移动设备类mobile detection使用实例
2014/04/14 PHP
PHP文件锁函数flock()详细介绍
2014/11/18 PHP
PHP实现四种基础排序算法的运行时间比较(推荐)
2016/08/11 PHP
简单的js分页脚本
2009/05/21 Javascript
使用 JScript 创建 .exe 或 .dll 文件的方法
2011/07/13 Javascript
表单元素的submit()方法和onsubmit事件应用概述
2013/02/01 Javascript
window resize和scroll事件的基本优化思路
2014/04/29 Javascript
js 左右悬浮对联广告代码示例
2014/12/12 Javascript
JavaScript获得url所有参数键值表的方法
2015/03/21 Javascript
node.js插件nodeclipse安装图文教程
2020/10/19 Javascript
JavaScript 是什么意思
2016/09/22 Javascript
jquery select2的使用心得(推荐)
2016/12/04 Javascript
wap手机端解决返回上一页的js实例
2016/12/08 Javascript
javascript DOM的详解及实例代码
2017/03/06 Javascript
JS运动改变单物体透明度的方法分析
2018/01/23 Javascript
vue router+vuex实现首页登录验证判断逻辑
2018/05/17 Javascript
js replace 全局替换的操作方法
2018/06/12 Javascript
Vue可自定义tab组件用法实例
2019/10/24 Javascript
js实现点击选项置顶动画效果
2020/08/25 Javascript
python实现对一个完整url进行分割的方法
2015/04/29 Python
python提取字典key列表的方法
2015/07/11 Python
python常见排序算法基础教程
2017/04/13 Python
python实现对excel进行数据剔除操作实例
2017/12/07 Python
python实现图片,视频人脸识别(dlib版)
2020/11/18 Python
英国护肤品购物网站:Beauty Expert
2016/08/19 全球购物
百度JavaScript笔试题
2015/01/15 面试题
实习生自我评价
2014/01/18 职场文书
完美主义个人的自我评价
2014/02/17 职场文书
开业庆典策划方案
2014/02/18 职场文书
工作过失检讨书
2014/02/23 职场文书
向领导表决心的话
2014/03/11 职场文书
呐喊读书笔记
2015/06/30 职场文书
2019脱贫攻坚工作总结报告范本!
2019/08/06 职场文书
Win11软件图标固定到任务栏
2022/04/19 数码科技
vue/cli 配置动态代理无需重启服务的方法
2022/05/20 Vue.js