78. Cookie
http://blog.csdn.net/treeroot/article/details/128885
http://blog.sina.com.cn/s/blog_9b59b638010102t5.html
http://blog.csdn.net/hj714886063/article/details/6901386
http://lbmydream.iteye.com/blog/1842920
1.会话
2. cookie
2.1 设置 cookie:
<?php//把用户名和密码保存到客户端的 cookie
//这个函数用于保存 cookie
//第一个参数表示 cookie 的一个 key,第二个参数表示 val,第三个参数表示cookie在客户端保存多少时间
//key=>valsetcookie('name','wjh123',time()+3600);
echo '保存成功';
2.2 取出 cookie
<?phpvar_dump($_COOKIE);$name = $_COOKIE['name'];
if(empty($name)){echo 'kong';
}else{echo $name;
}
HTTP 协议规定的。
2.3 更新 cookie
覆盖即可
2.4 删除 cookie
删除单个:
setcookie('address','',time()-1);//当前 时间 -1
全部删除:
foreach($_COOKIE as $key=>$val){setcookie($key,'',time()-1);
}
登陆案例:
<?phpheader('content-type:text/html;charset=utf-8');
//更新if(!empty($_COOKIE['lastVisit'])){echo '你上次的登陆时间为:' . $_COOKIE['lastVisit'];//更新时间setcookie('lastVisit',date('Y-m-d H:i:s'),time()+24*3600*7);
}else{//说明用户是第一次登陆echo '欢迎您,您是第一次登陆';//更新时间setcookie('lastVisit',date('Y-m-d H:i:s'),time()+24*3600*7);
}
并没有写入到磁盘中,而是写入浏览器内存。
应用:保存登陆用户名与显示上次登陆时间
login.php<?php require_once 'common.php';?>
<html>
<head><meta http-equiv="content-type" content="text/html;charset=utf-8"/>
</head><body>
<h1>管理员登陆系统</h1>
<form action="loginProcess.php" method="post"><table><tr><td>用户id</td><td><input type="text" name="id" value="<?php echo getCookieVal('id');?>"/></td></tr><tr><td>密码</td><td><input type="password" name="password"/></td></tr><tr><td colspan="2"><input type="checkbox" value="yes" name="keep"/>是否保存用户名</td></tr><tr><td><input type="submit" value="用户登陆"/></td><td><input type="reset" value="重新填写"/></td></tr></table>
</form>
<?phpif(!empty($_GET['errno'])){//接收errno$errno = $_GET['errno'];if($errno == 1){echo "<br/><font color='red'>你的用户名或者密码错误</font>";}
}
?>
</body>
</html>
loginProcess.php<?php
require_once 'AdminService.class.php';$id = $_POST['id'];$password = $_POST['password'];//获取用户是否保存id
//$keep = $_POST['keep'];
if(empty($_POST['keep'])){//echo '用户不保存';if(!empty($_COOKIE['id'])){setcookie('id',$id,time()-100);}}else{//echo '用户保存';setcookie('id',$id,time()+7*2*24*3600);
}//实例化一个AdminService方法
$adminService = new AdminService();
if($name = $adminService->checkAdmin($id,$password)){//合法header("Location:empManage.php?name=$name");exit();
}else{//非法header('Location:login.php?errno=1');exit();
}
common.php<?phpfunction getLastTime()
{if(empty($_COOKIE['visit'])){echo '您是第一次登陆<br/>';setcookie('visit',date('Y-y-d H:i:s'));}else{echo '您上次登陆的时间为:' . $_COOKIE['visit'] . '<br/>';setcookie('visit',date('Y-y-d H:i:s'));}
}function getCookieVal($key)
{if(empty($_COOKIE[$key])){return "";}else{return $_COOKIE[$key];}
}
empManage.php<html>
<head><meta http-equiv="content-type" content="text/html;charset=utf-8"/>
</head><body><?php//显示出用户名echo "欢迎 --- " . $_GET['name'] ."--- 登陆成功";
?>
<h1>主页面</h1>
<a href="empList.php">管理用户</a><br/>
<a href="">添加用户</a><br/>
<a href="">查询用户</a><br/>
<a href="">退出系统</a><br/>
</body>
</html><?phpheader('Content-Type:text/html;charset=utf-8');echo "登陆成功<br/>";echo "<br/><a href='login.php'>返回重新登陆</a><br/>";
require_once 'common.php';
getLastTime();
?>
78. Cookie相关推荐
- 投票系统之防止重复投票
投票系统-如何限制单位时间内投票次数 博客分类: 软件设计 限制对于防止倒票没有什么绝对的好方法,尤其是用户不需注册的情况下的投票,我们来看看有那些方法来防止倒票: 1.Session 采用Sess ...
- [转]python各模块的学习
[-] 01 关于本书 02 代码约定 03 关于例子 04 如何联系我们 1 核心模块 11 介绍 111 内建函数和异常 112 操作系统接口模块 113 类型支持模块 114 正则表达式 115 ...
- php必须知道的300个问题-目录
php必须知道的300个问题 第1章 PHP开发规范与入门要点 问题1 如何在Windows下配置PHP开发环境? 答案 问题2 如何在Linux下配置PHP开发环境? 问题3 如何搭建IIS+PHP ...
- 渗透测试-XSS漏洞检测
防护绕过 关于XSS漏洞的基础理解,请访问另一篇博文:https://blog.csdn.net/weixin_39190897/article/details/86005088. xss漏洞很容易被 ...
- python 模块大全
Python 模块大全(很详细!) 转载 2014年12月12日 20:47:18 标签: Python / 模块 / 教程 / 4479 编辑 删除 Python 模块大全很详细 01 关于本书 0 ...
- 脚本病毒---实验十一:跨站脚本攻击基础
目录 一.实验目的及要求 二.实验原理 跨站脚本攻击1)跨站脚本攻击(Cross Site Scripting), 2)XSS工作原理 3)XSS漏洞的分类 4)XSS攻击的危害 三.实验环境 四.实 ...
- 使用HttpOnly提升Cookie安全性
在介绍HttpOnly之前,我想跟大家聊聊Cookie及XSS. 随着B/S的普及,我们平时上网都是依赖于http协议完成,而Http是无状态的,即同一个会话的连续两个请求互相不了解,他们由最新实例化 ...
- 如何用ASP.NET加密Cookie数据过程分析
如何用ASP.NET加密Cookie数据过程呢,这里做个简单的分析. 首先,Cookie数据包含在HTTP请求和响应的包头里透明地自吸泵传递,也就是说聪明的人是能清清楚楚看到这些数据的 其次,Cook ...
- Servlet(3):Cookie
概念 Cookie是存储在客户端计算机上的文本文件,并保留了各种跟踪信息.Java Servlet支持HTTP Cookie. 识别返回用户包括三个步骤: (1) 服务器脚本向浏览器发送一组Cooki ...
- Java版 QQ空间自动登录无需拷贝cookie一天抓取30WQQ说说数据流程分析【转】
Java版 QQ空间自动登录无需拷贝cookie一天抓取30WQQ说说数据&流程分析 QQ空间说说抓取难度比较大,花了一个星期才研究清楚! 代码请移步到GitHub GitHub地址:http ...
最新文章
- 全局变量在主函数调用过程中被中断修改的问题
- js如何往div里写div
- FCN 学习: Semantic Segmentation
- [C/C++基础知识] 面试再谈struct和union大小问题
- 联捷俞海乐:从技术leader到CEO视野和责任提升几个维度
- Ubuntu查看系统任务管理器(cpu+内存资源占用)+查看虚拟机分配核心数
- 垃圾回收机制与引用类型
- jvm监控调优常用命令
- jdbc mysql user_tab_comments_mysql/jdbc:设置useInformationSchema=true读取表注释信息(table_comment)...
- Python之路【第八篇】:堡垒机实例以及数据库操作
- Map封装 (一个键多个值)
- 生成html报告并整合自动发动邮件功能
- 关于游戏的C 语言的课设报告,猜单词游戏C课程设计报告.doc
- springboot+security框架整合
- 开发者最讨厌的编程语言:Perl 名列第一,PHP、Objective-C 和 Ruby 都在其中
- IT运维人员该学习哪些技术
- php中如何判断目录是否存在文件_PHP判断指定目录下是否存在文件
- 对称加密算法和非对称加密算法介绍
- ubuntu16.04安装搜狗拼音输入法
- 如何让微信公众号的排名靠前些,文章的排名规则