用PHP写的MySQL数据库用户认证系统代码


Posted in PHP onMarch 22, 2007

这两天受朋友的托付,要我帮他写一个使用MySQL数据库的用户认证系统。我当然不好推脱的,只得耗费了一晚上的休息时间,写了个很简单的PHP程序。 
用户认证的原理很简单:首先需要用户在页面上填入用户名和密码,当然没注册的用户需要先注册。然后调用数据库搜索是否有相应的用户。如果有就确认,没有则提醒用户先注册。使用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)   
); 
PHP 相关文章推荐
MVC模式的PHP实现
Oct 09 PHP
自定义PHP分页函数
Oct 09 PHP
php通过文件头检测文件类型通用代码类(zip,rar等)
Oct 19 PHP
基于php常用函数总结(数组,字符串,时间,文件操作)
Jun 27 PHP
实现PHP多线程异步请求的3种方法
Jan 17 PHP
Linux操作系统安装LAMP环境
Jun 26 PHP
PHP 中 Orientation 属性判断上传图片是否需要旋转
Oct 16 PHP
10个对初学者非常有用的PHP技巧
Apr 06 PHP
laravel学习教程之存取器
Jul 30 PHP
PHP中$GLOBALS['HTTP_RAW_POST_DATA']和$_POST的区别分析
Jul 03 PHP
php大小写转换函数(strtolower、strtoupper)用法介绍
Nov 17 PHP
laravel解决迁移文件一次删除创建字段报错的问题
Oct 24 PHP
人尽可用的Windows技巧小贴士之下篇
Mar 22 #PHP
加速XP搜索功能堪比vista
Mar 22 #PHP
dedecms中常见问题修改方法总结
Mar 21 #PHP
dedecms后台验证码总提示错误的解决方法
Mar 21 #PHP
dedecms中显示数字验证码的修改方法
Mar 21 #PHP
PHP的分页功能
Mar 21 #PHP
完美解决dedecms中的[html][/html]和[code][/code]问题
Mar 20 #PHP
You might like
php中可能用来加密字符串的函数[base64_encode、urlencode、sha1]
2012/01/16 PHP
浅析php中三个等号(===)和两个等号(==)的区别
2013/08/06 PHP
zend framework中使用memcache的方法
2016/03/04 PHP
PHP常用函数之base64图片上传功能详解
2019/10/21 PHP
Js之软键盘实现(js源码)
2007/01/30 Javascript
jquery插件之信息弹出框showInfoDialog(成功/错误/警告/通知/背景遮罩)
2013/01/09 Javascript
jQuery中closest和parents的区别分析
2015/05/07 Javascript
HTML5使用DeviceOrientation实现摇一摇功能
2015/06/05 Javascript
JQuery遍历DOM节点的方法
2015/06/11 Javascript
js判断浏览器类型及设备(移动页面开发)
2015/07/30 Javascript
以Python代码实例展示kNN算法的实际运用
2015/10/26 Javascript
让DIV的滚动条自动滚动到最底部的3种方法(推荐)
2016/09/24 Javascript
Angular JS数据的双向绑定详解及实例
2016/12/31 Javascript
JQuery扩展对象方法操作示例
2018/08/21 jQuery
微信小程序五子棋游戏的棋盘,重置,对弈实现方法【附demo源码下载】
2019/02/20 Javascript
Node.js 多进程处理CPU密集任务的实现
2019/05/26 Javascript
layui 表单标签的校验方法
2019/09/04 Javascript
针对Vue路由history模式下Nginx后台配置操作
2020/10/22 Javascript
使用js获取身份证年龄的示例代码
2020/12/11 Javascript
Vue过滤器,生命周期函数和vue-resource简单介绍
2021/01/12 Vue.js
python检测某个变量是否有定义的方法
2015/05/20 Python
python增加矩阵维度的实例讲解
2018/04/04 Python
python字符串常用方法
2018/06/14 Python
Python 迭代,for...in遍历,迭代原理与应用示例
2019/10/12 Python
Python实现AI自动抠图实例解析
2020/03/05 Python
QML用PathView实现轮播图
2020/06/03 Python
使用python求斐波那契数列中第n个数的值示例代码
2020/07/26 Python
html5之Canvas路径绘图、坐标变换应用实例
2012/12/26 HTML / CSS
html5与css3小应用
2013/04/03 HTML / CSS
以实惠的价格提供高品质的时尚:Newchic
2018/01/18 全球购物
网上快餐厅创业计划书
2014/02/01 职场文书
物理系毕业生自荐书范文
2014/02/22 职场文书
协会周年庆活动方案
2014/08/26 职场文书
四风问题个人自查剖析材料思想汇报
2014/09/21 职场文书
高中生打架检讨书1000字
2015/02/17 职场文书
Python实现将多张图片合成MP4视频并加入背景音乐
2022/04/28 Python