`
897371388
  • 浏览: 529497 次
文章分类
社区版块
存档分类
最新评论

PHP学习系列之会话控制

 
阅读更多
<?php

/**
 * 
 * @authors Benjamin 
 * @date    2013-11-10 14:33:44
 */

/**
 * PHP学习系列之会话控制
 *
 * 一、cookie
 * 
 * cookie 是由服务器发送到浏览器的变量。cookie 通常是服务器嵌入到用户计算机中的小文本文件。
 * 每当计算机通过浏览器请求一个页面,就会发送这个 cookie。
 *
 * 设置cookie
 * setcookie(name,value,expire,path,domain,secure)
 * 向客户端发送一个 HTTP cookie
 *
 *
 * 获取cookie
 * $_COOKIE["name"]
 *
 * 获取所有cookie
 * print_r($_COOKIE);
 * 
 * isset($_COOKIE["name"])
 * 判断某个cookie是否存在
 *
 * 删除cookie
 * setCookie("name","");
 * 或者利用过期时间删除
 * setCookie("name","value",time() -1 );
 * 
 * cookie的限制
 * a.客户端使用(安全性)
 * b.一个浏览器能创建cookie最多30个,并且每个不能超过4KB
 * c.每个web站点能设置的cookie不能超过20个
 *
 * 使用:
 * 会员登录,购物车,不暂用资源,安全性低
 *
 * 二、session
 *
 * session只要创建,必须通过session_start()开启,放到文件开头
 * 一般存放时间1440秒,超时自动销毁,关闭浏览器自动销毁
 *
 * 设置session
 * $_SESSION["name"] = "value"
 *
 * 判断session 是否存在
 * isset($_SESSION["name"]);
 * 
 * 删除session
 * unset($_SESSION["name"]);
 *
 * 销毁所有的session
 * session_destroy();
 *
 * 使用:
 * 后台管理人员登录(人少),安全性高
 *
 *
 * 
 */

?>


<?php
/**
 * Demo cookie
 * demo_setCookie.php
 */
header("Content-type:text/html;charset=utf-8");
?>
<form method="post" action="demo_setCookie2.php">
	name:<input type="text" name="username">
	<input type="submit" value="登录">
</form>



<?php
/**
 * demo_setCookie2.php
 */
if(isset($_POST["username"]) && $_POST["username"] == "benjamin"){
	//正确,生成一个cookie 再跳转
	setCookie("username","Benjamin");
	header("Location:demo_setCookieSuccess.php");
}else{
	header("Location:demo_setCookie.php");
}
?>


<?php
/**
 * demo_setCookieSuccess.php
 */
header("Content-type:text/html;charset=utf-8");
if (isset($_COOKIE["username"])) {
	echo "欢迎光临".$_COOKIE["username"];
}else{
	echo "非法登录";
}

?>

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics