仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 986|回复: 19
打印 上一主题 下一主题

[学习教程] PHP教程之教你用PHP写MySQL数据库用户认证体系

[复制链接]
老尸 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-2-3 23:59:59 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
多去关于PHP的网站,尤其有很多经典的文章,多读读这些文章显然是有好处的。   <P style="TEXT-INDENT: 2em">这两天受伴侣的拜托,要我帮他写一个利用MySQL数据库的用户认证体系。我固然欠好推诿的,只得消耗了一夜的歇息工夫,写了个很复杂的PHP法式。 <P style="TEXT-INDENT: 2em">用户认证的道理很复杂:起首需求用户在页面上填入用户名和暗码,固然没注册的用户需求先注册。然后挪用数据库搜刮是不是有响应的用户。假如有就确认,没有则提示用户先注册。利用PHP来完成这一切很复杂,但需求注重的是假如想在今后的页面中都能确认用户身份,利用PHP3我只能想出利用cookie的办法。要想利用session,就只能守候PHP4正式版的宣布了! <P style="TEXT-INDENT: 2em">第一步是做一个登录的页面,这儿就不多讲了。我只做了个极复杂的,人人可以做得大度点。 <P style="TEXT-INDENT: 2em">第二步入手下手登录后切实其实认法式的设计。 <P style="TEXT-INDENT: 2em">
  1. 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 请进!; } ?>
复制代码
<P style="TEXT-INDENT: 2em">第三步固然是做好注册的页面,也不多讲了。 <P style="TEXT-INDENT: 2em">第四步是注册后的身份确认和输出数据库。 <P style="TEXT-INDENT: 2em">
  1. 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 请登录!;} ?>
复制代码
<P style="TEXT-INDENT: 2em">下一步是cookie的利用,我原盘算利用cookie来使每页都能辨认用户身份,但因为其余页面还没做好,不晓得需求用到哪些材料。因而就只要一个很复杂的利用,这里用到了php的援用: <P style="TEXT-INDENT: 2em">
  1. if(!$usercookie) {header("不法用户"); } ?> welcome.php: require("cookie.php"); /*挪用cookie.php*/ ?> echo $usercookie; ?>
复制代码
<P style="TEXT-INDENT: 2em">到这儿便完成了一个很复杂的用户认证体系,固然假如你要利用它还得建好数据库。上面是我的数据库表的布局,库的名字是userinfo。 <P style="TEXT-INDENT: 2em">
  1. create table usertbl ( ID int auto_increment primary key, Name varchar(30), Password varchar(20), Lastlogin varchar(20) );
复制代码
在我开始学习PHP以前,我从未想过要做软件工程,即便是在去听过华育国际的关于软件工程的美好前景后,因为我一直都没有想过要与代码打交道,而是想学好所学专业,做个网络工程师或者是网络安全人员。
飘灵儿 该用户已被删除
沙发
发表于 2015-2-4 07:55:47 | 只看该作者
对于懒惰的朋友,我推荐php的集成环境xampp或者是wamp。这两个软件安装方便,使用简单。但是我还是强烈建议自己动手搭建开发环境。
不帅 该用户已被删除
板凳
发表于 2015-2-6 15:43:17 | 只看该作者
曾经犯过一个很低级的错误,我在文件命名的时候用了一个横线\\\\\\\'-\\\\\\\' 号,结果找了好几个小时的错误,事实是命名的时候 是不能用横线 \\\\\\\'-\\\\\\\' 的,应该用的是下划线  \\\\\\\'_\\\\\\\' ;
再现理想 该用户已被删除
地板
发表于 2015-2-9 13:58:47 | 只看该作者
要进行开发,搭建环境是首先需要做的事,windows下面我习惯把环境那个安装在C盘下面,因为我配的环境经常出现诡异事件,什么事都没做环境有的时候就不能用啦。
飘飘悠悠 该用户已被删除
5#
发表于 2015-2-21 22:32:05 | 只看该作者
如果你已经到这种程度了,那么你已经可以做我的老师了。其实php也分很多的区域,
愤怒的大鸟 该用户已被删除
6#
发表于 2015-3-3 07:32:58 | 只看该作者
作为一个合格的coder 编码的规范是必须,命名方面我推崇“驼峰法”,另外就是自己写的代码最好要带注释,不然时间长了,就算是自己的代码估计看起来都费事,更不用说别人拉。
admin 该用户已被删除
7#
发表于 2015-3-6 17:12:54 | 只看该作者
学习php的目的往往是为了开发动态网站,phper就业的要求也涵盖了很多。我大致总结为:精通php和mysql
小女巫 该用户已被删除
8#
发表于 2015-3-13 04:30:26 | 只看该作者
曾经犯过一个很低级的错误,我在文件命名的时候用了一个横线\\\\\\\'-\\\\\\\' 号,结果找了好几个小时的错误,事实是命名的时候 是不能用横线 \\\\\\\'-\\\\\\\' 的,应该用的是下划线  \\\\\\\'_\\\\\\\' ;
乐观 该用户已被删除
9#
发表于 2015-3-15 21:58:39 | 只看该作者
这些都是最基本最常用功能,我们这些菜鸟在系统学习后,可以先对这些功能深入研究。
简单生活 该用户已被删除
10#
发表于 2015-3-17 07:09:15 | 只看该作者
我要在声明一下:我是个菜鸟!!我对php这门优秀的语言也是知之甚少。但是我要在这里说一下php在网站开发中最常用的几个功能:
深爱那片海 该用户已被删除
11#
发表于 2015-4-5 12:17:20 | 只看该作者
没接触过框架的人,也不用害怕,其实框架就是一种命名规范及插件,学会一个框架其余的框架都很好上手的。
只想知道 该用户已被删除
12#
发表于 2015-4-7 14:04:10 | 只看该作者
,熟悉html,能用div+css,还有javascript,优先考虑linux。我在开始学习的时候,就想把这些知识一起学习,我天真的认为同时学习能够互相呼应,因为知识是相通的。
小妖女 该用户已被删除
13#
发表于 2015-4-11 21:38:24 | 只看该作者
我学习了一段时间后,我发现效果并不好(估计是我自身的问题)。因为一个人的精力总是有限的,同时学习这么多,会导致每个的学习时间都得不到保证。
精灵巫婆 该用户已被删除
14#
发表于 2015-4-12 17:44:00 | 只看该作者
这些都是最基本最常用功能,我们这些菜鸟在系统学习后,可以先对这些功能深入研究。
灵魂腐蚀 该用户已被删除
15#
发表于 2015-4-13 12:48:26 | 只看该作者
爱上php,他也会爱上你。
若天明 该用户已被删除
16#
发表于 2015-4-17 23:48:51 | 只看该作者
先学习php和mysql,还有css(html语言很简单)我认为现在的效果比以前的方法好。
冷月葬花魂 该用户已被删除
17#
发表于 2015-4-25 05:49:01 | 只看该作者
我学习了一段时间后,我发现效果并不好(估计是我自身的问题)。因为一个人的精力总是有限的,同时学习这么多,会导致每个的学习时间都得不到保证。
兰色精灵 该用户已被删除
18#
发表于 2015-5-6 12:45:09 | 只看该作者
我还是推荐用firefox ,配上firebug 插件调试js能省下不受时间。谷歌的浏览器最好也不少用,因为谷歌的大侠们实在是太天才啦,把一些原来的js代码加了一些特效。
莫相离 该用户已被删除
19#
发表于 2015-5-11 07:18:12 | 只看该作者
,熟悉html,能用div+css,还有javascript,优先考虑linux。我在开始学习的时候,就想把这些知识一起学习,我天真的认为同时学习能够互相呼应,因为知识是相通的。
活着的死人 该用户已被删除
20#
发表于 2015-6-4 02:44:22 | 只看该作者
我还是推荐用firefox ,配上firebug 插件调试js能省下不受时间。谷歌的浏览器最好也不少用,因为谷歌的大侠们实在是太天才啦,把一些原来的js代码加了一些特效。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-23 13:32

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表