这两天受朋友的托付,要我帮他写一个使用MySQL数据库的用户认证系统。我当然不好推脱的,只得耗费了一晚上的休息时间,写了个很简单的PHP程序。由于赶的很仓卒,可能会太简陋了些,而且可能还会有错误和漏洞。有兴趣看看的朋友如果有什么更好的方法或建议,请email我.在这儿先谢谢了!

用户认证的原理很简单:首先需要用户在页面上填入用户名和密码,当然没注册的用户需要先注册。然后调用数据库搜索是否有相应的用户。如果有就确认,没有则提醒用户先注册。使用PHP来完成这一切很简单,但需要注意的是如果想在以后的页面中都能确认用户身份,使用PHP3我只能想出使用cookie的方法。要想使用session,就只能等待PHP4正式版的发布了!

第一步是做一个登录的页面,这儿就不多讲了。我只做了个极简单的,大家自己做得漂亮点。

第二步开始登录后的确认程序的设计。

login.php:

mysql_connect("localhost","user","password") /*连接数据库,用户名和密码自行修改*/

or die("无法连接数据库,请重试");

mysql_select_db("userinfo")

or die("无法选择数据库,请重试");

$today=date("Y-m-d H:i:s");

$query="

select id

from usertbl

where name=$name and password=$password /*从数据库中搜索和登录用户相应的资料*/

";

$result=mysql_query($query);

$numrows=mysql_num_rows($result);

if($numrows==0){ /*验证是否能找出相同资料的用户,不能则未注册*/

echo 非法用户

;

echo 请注册先

;

echo 重试

;

}

else{

$row=mysql_fetch_array($result);

$id=$row[0];

$query="

update usertbl

set lastlogin=$today

where id=$id";

$result=mysql_query($query);

SetCookie("usercookie", "欢迎你,$name"); /*这里使用了cookie,以方便之后的页面认证。但我未开发完这一块。希望有兴趣的朋友指正*/

echo 登录成功

;

echo 请进!

;

}

?>

第三步当然是做好注册的页面,也不多讲了:

第四步是注册后的身份确认和输入数据库。

register.php:

mysql_connect("localhost","user","password") /*请修改用户名和密码*/

or die("无法连接数据库,请重试");

mysql_select_db("userinfo")

or die("无法选择数据库,请重试");

$query="select id from usertbl where name=$name"; /*从数据库中搜索相同名字的用户资料*/

$result=mysql_query($query);

$numrows=mysql_num_rows($result);

if($numrows!=0) /*找到了当然就是有人先注册了相同的名字*/

{echo 已有人注册此名,请重新选择名字!;}

else

{$query="insert into usertbl values(0,$name,$password,)"; /*找不到相同的就输入新的用户资料*/

mysql_query($query);

echo 注册成功;

echo 请登录!;}

?>

下一步是cookie的使用,我原打算使用cookie来使每一页都能识别用户身份,但由于别的页面还没做好,不知道需要用到哪些资料。于是就只有一个很简单的使用,这里用到了php的引用:

if(!$usercookie)

{header("非法用户");

}

?>

welcome.php:

require("cookie.php"); /*调用cookie.php*/

?>

echo $usercookie;

?>

到这儿便完成了一个很简单的用户认证系统,当然如果你要使用它还得建好数据库.下面是我的数据库表的结构,库的名字是userinfo.

create table usertbl

(

ID int auto_increment primary key,

Name varchar(30),

Password varchar(20),

Lastlogin varchar(20)

);

小编推荐:欲学习电脑技术、系统维护、网络管理、编程开发和安全攻防等高端IT技术,请 点击这里注册账号,公开课频道价值万元IT培训教程免费学,让您少走弯路、事半功倍,好工作升职加薪!

免责声明:本站系公益性非盈利IT技术普及网,本文由投稿者转载自互联网的公开文章,文末均已注明出处,其内容和图片版权归原网站或作者所有,文中所述不代表本站观点,若有无意侵权或转载不当之处请从网站右下角联系我们处理,谢谢合作!

mysql数据库登录认证_MySQL数据库的用户认证系统相关推荐

  1. mysql建库权限_mysql数据库用户权限及建库脚本

    /* 创建系统数据库mydatabasename */ drop database if exists mydatabasename; create database mydatabasename; ...

  2. 2005数据库导入mysql没有主键_mysql数据库详解(续二)

    mysql数据库登陆问题解决汇总 首先需要说明一下,MYSQL数据库登陆的方式,通常就是本地登陆(localhost)和远程登陆,那么这里在深入地了解一部localhost和127.0.0.1的区别是 ...

  3. 初识mysql数据字段属性_MySQL数据库~~~~初识、基础数据类型

    一 数据库初识 1.1 什么是数据库 数据库(DataBase,简称DB),简而言之可视为电子化的文件柜----存储电子文件的处所,用户可以对文件中的数据运行新增,截取,更新,删除等操作. 所谓数据库 ...

  4. mysql实训报告_mysql数据库技术》实验报告.doc

    mysql数据库技术>实验报告 MySQL数据库技术实验报告 系 别 班 级 学 号 姓 名 地点 地点机房 课程名称 MySQL数据库技术 实验名称 实验1 MySQL的使用 实 验 过 程 ...

  5. mysql反弹提权_MySQL数据库反弹端口连接提权

    [51CTO.com原创稿件]在渗透或者安全评估时,有可能遇到一些比较奇葩的环境,即使通过Mysql root账号和密码获取了webshell,由于无法执行命令.在一般的情况下,也就放弃了.但其实可以 ...

  6. mysql 导出dmp文件_Mysql数据库的各种命令:

    一.连接MYSQL 格式: mysql -h主机地址 -u用户名 -p用户密码 1.连接到本机上的MYSQL. 首先打开DOS窗口,然后进入目录mysqlbin,再键入命令mysql -u root ...

  7. MySQL数据库的总结_MySQL数据库应用总结(三)—MySQL数据库的基本操作

    SQL语法预览: 查看所有数据库:[show databases; ] 创建数据库:[create database 数据库名;] 查看所创建的数据库:[show create database 数据 ...

  8. mysql数据库垂直切分_mysql数据库的水平拆分与垂直拆分

    近端时间在面试,发现很多面试官或者面试都把数据的水平拆分合垂直拆分给搞混了,今天特意写了一篇博客来说说水平拆分和垂直拆分希望对程序猿们有所帮助. 数据库水平与垂直拆分: 垂直(纵向)拆分:是指按功能模 ...

  9. mysql数据库显示问号_mysql数据库中文显示问号

    mysql命令框中向表中插入中文字符,在可视化工具MySQL Workbeach或phpMyAdmin中不显示或显示乱码的问题解决 mysql命令框中向表中插入中文字符,在可视化工具MySQL Wor ...

最新文章

  1. 3年级英语听力测试软件,三年级英语听力测试题.doc
  2. 万字长文解读运营商搏击5G:一场比拼财力的三国杀
  3. 十大厂商为什么要联合推出“快应用”对标小程序?
  4. 用deepfake拍电影可以安排了:迪士尼发布首个百万像素高分辨率换脸算法
  5. ML之XGBoost:XGBoost参数调优的优秀外文翻译—《XGBoost中的参数调优完整指南(带python中的代码)》(四)
  6. Error: Cannot retrieve metalink for repository: epel. Please verify its path and try again
  7. LeetCode 1250. 检查「好数组」(set / 最大公约数)
  8. JS闭包中未使用的引用变量回收机制浅探
  9. HDU3709 Balanced Number
  10. 几个小伙伴的进入信息安全行业的经历
  11. QComboBox使用讲解
  12. 08cms php5.4,08CMS - 内容管理CMS - PHP开源项目 - 开源吧
  13. 已解决 | burp无法抓取iphone https数据包
  14. PHP实现微信小程序免密支付,微信免密支付,微信小程序实现微信支付功能!!!...
  15. Docker 构建统一的前端开发环境
  16. Python制作古诗生成器
  17. IDEA下调试和运行Hadoop程序例子
  18. ubuntu桌面便签_在Ubuntu 上有什么必装的实用软件?
  19. 【转】指定页面进行Monkey测试
  20. 育儿-《让孩子远离焦虑》书中的精髓:家长如何帮助孩子解决他们自身的焦虑问题。

热门文章

  1. iframe的滚动条隐藏后仍可滑动
  2. MySQL DBA的修炼与未来,看看老司机们怎么说?
  3. 《Python深度学习》第一部分读书笔记
  4. 一则晦涩难懂的码农段子 | 每日趣闻
  5. 【配送路径规划】蚁群算法求解配送路径最短问题【含Matlab源码 2222期】
  6. 【JS】截取、分割、替换字符串
  7. 钉钉 服务器 消息推送,【20210727 更新】 全能推送PushBot(原钉钉推送)支持企业微信,PushPlus,Bark...
  8. 我放弃了VMware
  9. php 转换成string,在PHP中将数字(1,2,3)转换为string(一,二,三)
  10. 基于单片机的贪吃蛇设计