`

第12章 会话控制

 
阅读更多

Demo1.php

<form method="get" action="Demo2.php">
	姓名:<input type="text" name="username" /> <br />
	<input type="submit" value="提交" />
</form>

 

Demo2.php

<?php
	//echo $_POST['username'];	
	//如果表单采用的 get 传输,那么接受必须采用 
	echo $_GET['username'];	
	//到底那种比较好呢。????
	//$_POST[''];	比较安全
?>

 

Demo3.php

<?php
	//创建一个 Cookie
	//Cookie 是在你的客户机存一个小文件,这个文件包含你登录时的信息
	//setcookie 可以创建一个客户机的 cookie 文件
	//第一个参数表示 cookie 的名称,第二个参数表示这个 cookie 名称的值
	//所谓的会话结束时,就是当你这个浏览器关闭时,就没有了,就自动删除
	//创建一个包含过期的 cookie, 过期时间采用当前的时间戳 + 秒即可
	//time()+(7*24*60*60) 表示未来的7 天
	//一旦 setcookie 改变了,一刷新浏览器,就会把旧的 cookie 覆盖掉
	setcookie('name','oneStopWeb',time()+(7*24*60*60));
?>

 

Demo4.php

<?php
	setcookie('name','oneStopWeb');
	//读取本机的 cookie,采用一个超级全局变量 $_COOKIE
	//里面放 cookie 名即可
	//有一个特性,setcookie 并不是及时生成,它会慢一拍
	//PS:慢一拍,第一次刷新,只是生成覆盖了原来。
	//但获取的还是之前的,而第二次刷新,才能真正获取到。
	//echo $_COOKIE['name'];
	//用变量检测函数来判断 cookie 是否存在
	if(isset($_COOKIE['name'])){
		echo $_COOKIE['name'];
	}else{
		echo '不存在此用户';
	}
?>

 

Demo5.php

<?php
	//删除 cookie
	setcookie('name','oneStopWeb');
	//中间删除掉了这个 cookie
	//将这个值设置为空即可
	//setcookie('name','');
	//我将过期时间调整到目前的时间还少一秒,那么就等于是过期的了
	setcookie('name','oneStopWeb',time()-1);
	echo $_COOKIE['name'];	
?>

 

Demo6.php

<form method="post" action="Demo7.php">
	姓名:<input type="text" name="username" /> <br />
	<input type="submit" value="提交" />
</form>

 

Demo7.php

<?php
	//如果姓名的指定的姓名相同,那么就生成一个 cookie
	//完成登录
	if(isset($_POST['username']) && $_POST['username']=='oneStopWeb'){
		//如果正确了,我生成一个 cookie,再跳转
		setcookie('name','web');
		header('Location:Demo8.php');
	}else{
		header('Location:Demo6.php');
	}	
?>

 

Demo8.php

<?php
	if(isset($_COOKIE['name'])){
		echo '欢迎光临:'.$_COOKIE['name'];
	}else {
		echo '非法登录';
	}
?>

 

Demo9.php

<?php
	session_start();  //开户 session 会话处理
	//session 只要用到这个,就必须开启session_start()
	//放在文件开头	
	//创建 session ,直接采用超级全局变量赋值即可
	//session 是存在服务器端,一般存放 1440 秒,
	//如果网页没有任何操作,会自动销毁,当然,可以通过 php.ini 去修改保存时间
	//如果关闭了浏览器,那么也自动销毁。
	//及时性,不像 cookie 会慢半拍
	$_SESSION['name1'] = 'oneStopWeb';
	$_SESSION['name2'] = 'oneStopWeb';
	//echo $_SESSION['name'];
//	if(isset($_SESSION['name'])){
//		echo $_SESSION['name'];
//	}else{
//		echo '不存在此人。';
//	}
	//不是删除的方法
//	$_SESSION['name'] = '';
	//真正的删除方法
	//unset($_SESSION['name']);
//	if(isset($_SESSION['name'])){
//		echo $_SESSION['name'];
//	}else{
//		echo '不存在此人。';
//	}
?>

 

Demo10.php

<?php
	session_start();
	//销毁所有 session ,销毁的也慢半拍
	session_destroy();
	echo $_SESSION['name1'] ;
	echo $_SESSION['name2'] ;		
	
	//cookie适用于会员登录,购物车啊。。。
	//因为他不占用服务器资源,所以会员特别多,购物车特别多的,就用 cookie
	//session 一般用于后台管理登录,人少
	//安全性,一段时间不操作会自动过期
?>

 

 

 

 

0
5
分享到:
评论

相关推荐

    PHP中文网线上培训班-PHP编程.zip

    第12章 匿名函数与对象初步 第13章 对象继承与成员访问 第14章 成员重载与实战 第15章 抽象类与接口实战 第16章 面向对象的进阶内容 第17章 设计模式与MVC 第18章 异常处理与文件上传 第19章 php原生实战 第20章 php...

    Shiro学习教程源代码

    第十二章 与Spring集成 第十三章 RememberMe 第十四章 SSL 第十五章 单点登录 第十六章 综合实例 第十七章 OAuth2集成 第十八章 并发登录人数控制 第十九章 动态URL权限控制 第二十章 无状态Web应用集成 第二十一章 ...

    OWASP项目分享:应用软件安全级别验证参考标准(ASVS).pdf

    目 录 第1 章 使用应用安全验证...第12章V10:HTTP安全配置 第13章V11:恶意控件 第14章V12:业务逻辑 第15章V13:文件和资源 第16章V14:移动应用程序 第17章V15:WEB服务50 第18章V16:安全配置 第19章ASVS的实践案例

    wap无线应用协议pdf完整版

    第12章 无线电话应用接口规范关于PDC的附加说明 第13章 无线会话应用规范 第14章 无线会议协议规范 第15章 无线事务协议规范 第16章 无线传输层安全规范 第17章 无线数据报协议规范 第18章 无线控制报文协议...

    wap无线应用协议.RAR

    第12章 无线电话应用接口规范关于PDC的附加说明.pdf 第13章 无线会话应用规范.pdf 第14章 无线会议协议规范.pdf. 第15章 无线事务协议规范.pdf 第16章 无线传输层安全规范.pdf 第17章 无线数据报协议规范.pdf 第18章...

    决战Nginx系统卷:高性能Web服务器详解与运维第二部分(保证能用)

    第12章 限制用户并发连接数 第13章 修改或隐藏Nginx的版本号 第14章 配置FLV服务器 第15章 Nginx的访问控制 第16章 提供FTP下载 第17章 Nginx与编码 第18章 网页压缩传输 第19章 控制Nginx如何记录日志 第20...

    决战Nginx: 系统卷 - 高性能Web服务器详解与运维第三部分(保证能用)

    第12章 限制用户并发连接数 第13章 修改或隐藏Nginx的版本号 第14章 配置FLV服务器 第15章 Nginx的访问控制 第16章 提供FTP下载 第17章 Nginx与编码 第18章 网页压缩传输 第19章 控制Nginx如何记录日志 第20...

    决战Nginx系统卷:高性能Web服务器详解与运维第一部分(保证能用)

    第12章 限制用户并发连接数 第13章 修改或隐藏Nginx的版本号 第14章 配置FLV服务器 第15章 Nginx的访问控制 第16章 提供FTP下载 第17章 Nginx与编码 第18章 网页压缩传输 第19章 控制Nginx如何记录日志 第20...

    J2EE Web程序开发定向班V1.0 Java就业班V2.0 (完整版)

    第12章:Servlet与JSP核心技术课程--12、用JSP脚本元素调用Java-用JSP脚本元素调用Java(1).rmvb 第12章:Servlet与JSP核心技术课程--12、用JSP脚本元素调用Java-用JSP脚本元素调用Java(2).rmvb 第12章:Servlet与JSP...

    RFC5415(中文)无线AP控制和配置(CAPWAP)协议标准

    第12章 安全考虑 12-1 CAPWAP安全 12-1-1 转换受保护数据为不受保护数据 12-1-2 转换不受保护数据为受保护数据(插入) 12-1-3 删除受保护记录 12-1-4 插入不受保护记录 12-1-5 应用MD5 12-1-6 CAPWAP分段 12-...

    Grails 技术精解与Web开发实践【源码+样章】----下载不扣分,回帖加1分,欢迎下载,童叟无欺

    第12章 与Spring整合 155 12.1 依赖注入与Spring容器基础 155 12.1.1 依赖注入 155 12.1.2 Spring容器基础 157 12.2 在Grails中使用Spring 158 12.3 本章小结 160 第13章 深入Controller 161 13.1 Controller中常用...

    Java/JavaEE 学习笔记

    第十二章 Altering Tables and Constraints..142 第十三章 Creating Sequences..........145 第十四章 Creating View(创建视图)146 第十五章 Creating Indexes(创建索引).....148 第十六章 权限的授予与收回...........

    Servlet与JSP核心编程第2版

    第12章 控制所生成的servlet的结构:jsppage指令 12.1 import属性 12.2 contenttype和pageencoding属性 12.3 条件性地生成excel电子表格 12.4 session属性 12.5 iselignored属性 12.6 buffer和autoflush...

    J2EE学习笔记(J2ee初学者必备手册)

    第十二章 Altering Tables and Constraints..142 第十三章 Creating Sequences..........145 第十四章 Creating View(创建视图)146 第十五章 Creating Indexes(创建索引).....148 第十六章 权限的授予与收回...........

    21天学通Oracle

    第12章 用户角色与权限控制(教学视频:45分钟) 215 第三篇 Oracle中的SQL 第13章 Oracle数据类型(教学视频:21分钟) 231 第14章 Oracle中的函数与表达式(教学视频:111分钟) 240 第15章 Oracle中的控制...

    计算机网络技术名称解释.doc

    网络通信协议 第二章 1、信息 2、数据 3、信道 4、物理信道 5、逻辑信道 6、信道容量 7、码元 8、比特率 9、波特率 10、误码率 11、吞吐量 12、信道带宽 13、数据传输率 14、DTE 15、DCE 16、单工通信 17、半双工...

    Java语言基础下载

    第十二章:高级I/O流 192 学习目标 192 I/O基础知识 193 字节流 193 字符流 194 节点流 194 过程流 194 基本字符流类 198 对象串行化 201 实例分析 203 内容总结 211 独立实践 212 第十三章:网络 213 学习目标 213 ...

    Websphere MQ入门教程

    第十二章 用Java编程 158 目标 158 12.1 概述 158 12.2 平台 158 12.2.1 获得软件包 158 12.2.2 WebSphere MQ for Java的运行环境 159 12.3 使用WebSphere MQ for Java 161 12.3.1客户机连接模式 161 12.3.2绑定模式...

    python入门到高级全栈工程师培训 第3期 附课件代码

    第12章 01 今日内容介绍以及基础测试题答案讲解 02 Python 列表的魔法 03 Python 元组的魔法 04 Python 字典的魔法 05 Python 错误更正:布尔值可以作为字典的key 06 Python 今日内容整理 第13章 第13章共1课 第...

Global site tag (gtag.js) - Google Analytics