跟着百度学PHP[14]-COOKIE的应用/网站登陆案例完整案例

news/2024/5/10 9:56:21/文章来源:https://blog.csdn.net/weixin_33882443/article/details/85859241

先在数据库当中创建以下数据:

mysql> create table user(-> id int not null auto_increment,-> username varchar(50) not null default '',-> password char(32) not null default '',-> email varchar(80) not null default '',-> allow_1 smallint not null default 0,-> allow_2 smallint not null default 0,-> allow_3 smallint not null default 0,-> primary key(id));
mysql> insert into user(username,password,email,allow_1,allow_2,allow_3) values('admin',md5('admin'),'admin@admin.com',1,1,1);
Query OK, 1 row affected (0.18 sec)mysql> insert into user(username,password,email,allow_1,allow_2,allow_3) values('shuaige',md5('shuaige'),'shuai@admin.com',0,1,1);
Query OK, 1 row affected (0.12 sec)mysql> insert into user(username,password,email,allow_1,allow_2,allow_3) values('daniu',md5('daniu'),'daniu@admin.com',0,0,1);
Query OK, 1 row affected (0.14 sec)

allow_x中的一代表用户的权限,其值中的 1代表拥有权限,0代表没有权限。看一下结构。

mysql> select * from user;
+----+----------+----------------------------------+-----------------+---------+---------+---------+
| id | username | password                         | email           | allow_1 | allow_2 | allow_3 |
+----+----------+----------------------------------+-----------------+---------+---------+---------+
|  1 | admin    | 21232f297a57a5a743894a0e4a801fc3 | admin@admin.com |       1 |       1 |       1 |
|  2 | shuaige  | 37d2b9990df5a6843caf19352fee42a6 | shuai@admin.com |       0 |       1 |       1 |
|  3 | daniu    | 76720c5adee75ce9c7779500893fb648 | daniu@admin.com |       0 |       0 |       1 |
+----+----------+----------------------------------+-----------------+---------+---------+---------+
3 rows in set (0.00 sec)

然后我们写几个文件夹:

  1. Index.php 首页
  2. Cookie.php Cookie页面
  3. Content.php 文章页面
  4. Exit.php  离开页面

第一个Index.php

<?php 
echo "你好这是首页.<br />";
echo "<a href='login.php'>管理员页面登陆</a>";?>
Index.php

第二个Cookie.php

<?php 
header("content-type:text/html;charset=utf-8");
//判断是否存在并且判断是否已经登陆的反句。
if ((isset($_COOKIE['isLogin']) && $_COOKIE['isLogin'] == 1)) {echo "抱歉,您还没有登陆呢.";//不能直接使用header来跳转。echo '<script>setTimeout(\'location="login.php"\',30000);</script>';
}?>
Cookie.php

第三个Login.php

<?php header("content-type:text/html;charset=utf-8");include './cookie.php';if (isset($_POST['dosubmit'])) {$pdo = new pdo("mysql:host=localhost;dbname=admin","root","");$sql = $pdo->prepare("select id,username,password,allow_1,allow_2,allow_3 from user where username =? and password=? ");$sql->execute(array($_POST['username'],md5($_POST['password'])));if($sql -> rowCount() > 0){//rowCount是执行sql影响的行数。//list:把数组中的一些值赋值给变量,$sql->fetch(PDO::FETCH_NUM)是用来获取值的,然后组成  一个数组。list($id,$username,$password,$allow_1,$allow_2,$allow_3) = $sql->fetch(PDO::FETCH_NUM);echo "用户ID:".$id."<br />";echo "用户账号:".$username."<br />";echo "用户密码:".$password."<br>";echo "用户权限:".$allow_1."<br>";echo "用户权限:".$allow_2."<br>";echo "用户权限:".$allow_3."<br>";$time = time()+24*60*60;//当前时间加上一天的时间//setcookie(name,value,time,path)setcookie("uid",$id,$time,"/");//将$id存储在uid里面。setcookie("username",$username,$time,"/");setcookie("passworod",$password,$time,"/");setcookie("allow_1",$allow_1,$time,"/");setcookie("allow_2",$allow_2,$time,"/");setcookie("allow_3",$allow_3,$time,"/");header("location:content.php");}else{echo "<script>alert('密码错误!')</script>";}}?>
<html>
<h3>用户登陆</h3>
<form action="" name='form1' method='POST'>
username:<input type="text" name="username" value='' /><br>
password:<input type="password" name="password" value='' /><br /><input type="submit" name='dosubmit' value='登陆'><br />
</form>
</html>
Login.php

第四个Exit.php

<?php 
if (isset($_COOKIE["username"])) {//问以下是否设置了usernamesetcookie("id","",time()-3600,"/");setcookie("username","",time()-3600,"/");setcookie("password","",time()-3600,"/");setcookie("allow_1","",time()-3600,"/");setcookie("allow_2","",time()-3600,"/");setcookie("allow_3","",time()-3600,"/");echo "再见,亲爱的{$_COOKIE['username']}";
}?><script>setTimeout("location='index.php'",3000);</script>
Exit.php

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_778778.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

网站加速哪家强?四大免费CDN服务评测大PK

之前我把市场上主流的、适合站长用的CDN都介绍了一遍&#xff0c;但随着加速乐与百度分家&#xff0c;百度自家推出云加速后&#xff0c;市场格局再度发生变化。本文&#xff0c;将结合卢松松的亲身体验&#xff0c;来对比360网站卫士、百度云加速、加速乐、安全宝&#xff0c;…

阿里云系列——3.网站备案初步核审(详细步骤)---2015-11.12

网站部署之~阿里云系列汇总 http://www.cnblogs.com/dunitian/p/4958462.html 流程图&#xff1a; 1.注册账号 进&#xff1a;https://beian.gein.cn/account/login.htm 注册一个账号&#xff0c;然后会收到邮件 立即备案 如何办理首次备案&#xff1f;如果您从未办理过备案&am…

WordPress 多站点建站教程(七):多站点函数

1、get_blog_details&#xff08;获取子站点信息&#xff09; 返回多站点博客信息即wp_blogs表。 //显示站点名称 $blog_details get_blog_details(1); echo Blog .$blog_details->blog_id. is called .$blog_details->blogname..;//显示站点总文章数 $blog_details ge…

百度蝶变SEO获奖诊断书分享

导读&#xff1a;这篇诊断书是百度蝶变行动SEO诊断中获奖的14篇中的一篇&#xff0c;诊断的站点本来就是高质量站点&#xff0c;所以可以称此诊断书是SEO进阶版&#xff0c;希望里面的一些SEO建议可以为站长带来帮助&#xff01;百度专家团点评&#xff1a;本届蝶变行动百度着重…

****一步步构建大型网站架构

之前我简单向大家介绍了各个知名大型网站的架构&#xff0c;MySpace的五个里程碑、Flickr的架构、YouTube的架构、PlentyOfFish的架构、WikiPedia的架构。这几个都很典型&#xff0c;我们可以从中获取很多有关网站架构方面的知识&#xff0c;看了之后你会发现你原来的想法很可能…

zabbix实战监控WEB网站性

我们怎么用zabbix监控web性能和可用性呢&#xff1f;我们这边分为几个步骤&#xff1a;打开网站、登陆、登陆验证、退出&#xff0c;一共4个小step。检测流程1. 打开网站&#xff1a;如果http code为200&#xff0c;并且响应的html中包含Zabbix SIA表示打开成功&#xff08;zab…

SEO深度解读之HITS链接分析算法

HITS(Hyperlink - Induced Topic Search)链接分析算法诞生在1997年&#xff0c;该算法是由康奈尔大学中的一位博士提出&#xff0c;并且该算法沿用于全球多个搜索引擎当中。当然&#xff0c;不同的搜索引擎针对于该算法的侧重点和内部公式都有不一的算法结构调整&#xff0c;并…

由 12306.cn 谈谈网站性能技术

http://www.oschina.net/news/24838/website-performance 原文出处&#xff1a;爱范儿 oschina 配图 12306.cn网站挂了&#xff0c;被全国人民骂了。我这两天也在思考这个事&#xff0c;我想以这个事来粗略地和大家讨论一下网站性能的问题。因为仓促&#xff0c;而且完全基于 本…

PMI网站中pdu查询

1、PMI官网&#xff1a;http://www.pmi.org/ 2、登录--->点击“myPMI”-->右侧“CERTIFICATION STATUS”&#xff08;国外网站常常加载慢 会加载不出来就不显示pdu信息&#xff0c;多加载几遍就出来了&#xff09; 转载于:https://www.cnblogs.com/wangcp-2014/p/600702…

大型网站技术架构(2):架构要素和高性能架构

为了使网站的能够应对高并发访问&#xff0c;海量数据处理&#xff0c;高可靠运行等一系列问题&#xff0c;我们可以选择横向或纵向两个方向来入手 基本思路 首先可以对整个架构进行分层&#xff0c;一般可以分为 应用层&#xff0c;服务层&#xff0c;数据层&#xff1b;实践中…

大型网站技术架构-入门梳理

罗列了大型网站架构涉及到的概念&#xff0c;附上了简单说明前言本文是对《大型网站架构设计》(李智慧 著)一书的梳理&#xff0c;类似文字版的“思维导图”全文主要围绕“性能&#xff0c;可用性&#xff0c;伸缩性&#xff0c;扩展性&#xff0c;安全”这五个要素性能&#x…

电商技术解密:电商网站会存在哪些安全隐患

2019独角兽企业重金招聘Python工程师标准>>> 在电商的研发体系中有一个叫做“风控”的部门&#xff0c;整个部门负责保障整个网站的安全、可靠。是一个比较神秘的组织&#xff0c;每天需要与形形色色的黑客、黄牛斗智斗勇。 那么一个电商网站会存在哪些安全隐患呢&a…

《Axure RP7网站和APP原型制作从入门到精通(60小时案例版)》一导读

前 言 Axure RP7网站和APP原型制作从入门到精通&#xff08;60小时案例版&#xff09;原型制作是在正式开始视觉设计或编码之前最具成本效益的可用性跟踪手段。Axure RP7是行业中最知名的原型设计工具之一。随着专业工具的出现&#xff0c;设计用户体验从未如此令人兴奋&#x…

c++多久能精通_新手入门学习SEO优化需要多久?

关于新手学习SEO入门需要多久的问题&#xff0c;这个就需要具体的规划一下了。何为SEO优化入门&#xff1f;客绪方网络SEO小方是这样理解的&#xff1a;那就是我们拿到一个网站以后&#xff0c;知道SEO优化是怎么回事&#xff0c;也知道优化网站需要做哪些事情&#xff0c;如果…

CA安全会提出伦敦协议 旨在减少“安全”的钓鱼网站

2019独角兽企业重金招聘Python工程师标准>>> 证书颁发机构们搞了个伦敦协议试图改进OV和EV证书&#xff0c;但浏览器厂商会支持吗&#xff1f; 伦敦协议是SSL行业如此独特的一个很好的例子。 很少有行业中的五家顶级公司聚集在一起&#xff0c;试图解决他们销售的产…

python 验证码识别示例(一) 某个网站验证码识别

某个招聘网站的验证码识别&#xff0c;过程如下 一&#xff1a; 原始验证码&#xff1a; 二&#xff1a; 首先对验证码进行分析&#xff0c;该验证码的数字颜色有变化&#xff0c;这个就是识别这个验证码遇到的比较难的问题&#xff0c;解决方法是使用PIL 中的 getpixel 方法…

服务器上安装两个织梦网站,云服务器安装多个织梦

云服务器安装多个织梦 内容精选换一换您可以选择在云服务器上安装一个或多个应用。如需在云服务器上安装其他应用&#xff0c;请参考如下操作进行添加。暂时仅允许支持VR应用的云服务器安装VR应用。暂时仅允许支持3D应用的云服务器安装3D应用。暂时仅允许支持VR应用的云服务器有…

30个在线Python自学网站,再也不用到处找资料了

最近有几个小伙伴咨询怎么学习python的事情&#xff0c;他们有做开发的、有做运营的&#xff0c;很高兴大家有这么强烈的Python学习意愿。当然Python的学习&#xff0c;我是建议自学&#xff0c;首先明确自己的学习目标&#xff0c;例如开发自动化脚本、做数据分析等。然后可以…

Asp网站脚本漏洞的安全防范

从一个注入点到系统权限的过程。当然&#xff0c;这只是一个例子&#xff0c;在真正的过程中还有很多变化的&#xff0c;我主要通过这个例子来演示一下网络******的过程&#xff0c;接下来我们就采用相应的方法进行防范。&#xff08;1&#xff09;首先我们从安装iis6.0的时候做…