Cookie的配制使用与删除
文件Cookie.php代码如下:
<!--
1,PHP中cookie的配置和应用
SetCookie(string name,string value,int expire,string path,string domain,int sevure);
name是cookie变量名称标识,你在php中将能像使用普通变量名相同来用他引用cookie变量。value是cookie变量的初始值,expire表示该变量的网站;secure则需在https的安全传输时过才有效
例:
SetCookie("Cookie","cookievalue",time()+3600,"/forum","xiaohongyang.com",1);
2,PHP中cookie的接收和处理
PHP中对cookie的接收和处理的支持非常好,是完全自动的,跟FORM变量的原则一样,特别简单
比如设置一个名为MyCookier的Coolie,php会自动从WEB服务器接收的HTTP头里把它分析出来,并形成一个与变通变量一样的变量,名为$MyCooie,这个变量的值就是Cookie的值:数组同样适用.
另外一个办法是引用PHP的全局变量SHTTP_COOKIE_VARS数组。
e.x:
echo $MyCookie;
echo $CookieArray[0];
echo $_COOKIE["MyCookie"]; //推荐用这种方式
echo $HTTP_COOKIE_VARS["MyCookie"];
3,删除Cookie方法:
1>SetCookie("Cookie","");
2>SetCookie("Cookie","value",time()-1);
4,Cookie的限制
1>必须在HTML文件内容输出之前设置
2>不同的浏览器对Cookie的处理也不一致,且有时会出现错误的结果。
3>限制是在客户端的。一个浏览器能创建的Cookie数量最多为30个,且每个不能超过4KB,每个WEB站点能设置的Cookie总数不能卖过20个
-->
<!----------------------------------------------------------------设置cookie在HTML文件内容输出之前---------------------------------------------------------------->
<?php
if ($_POST[name]&&$_POST[password]){
setcookie('name',$_POST[name]);
setcookie('pass',$_POST[password]);
echo "<script>location.href=/"$_SERVER[PHP_SELF]/" </script>"; //重定向到本页面以实现刷新页面cookie
}
?>
<!----------------------------------------------------------------输入表单信息---------------------------------------------------------->
<form name="myform" method="post" action='<?php echo "$_SERVER[PHP_SELF]";?>'>
姓名:<input type="text" name="name" /></br>
密码:<input type="password" name="password" /></br>
<input type="submit" name="submit" value="登陆 " /></br>
<!----------------------------------------------------------------显示cookie---------------------------------------------------------------->
<?php
if ($_COOKIE["name"]&&$_COOKIE["pass"]){
echo "<hr>姓名:".$_COOKIE["name"]."<br>password:".$_COOKIE["pass"];
echo "<a href=/"$_SERVER[PHP_SELF]?out=out/">退出</a>";
}
/***************************************************************** 删除cookie************************************************************/
if ($_GET[out]){
echo SetCookie("name","",time()-1);
echo SetCookie("pass","",time()-1);
echo "<script>location.href=/"$_SERVER[PHP_SELF]/"</script>"; //重定向到本页面以实现刷新页面cookie
}
?>
</form>
运行结果:
姓名:
密码:
登陆结果:
姓名:
密码:
姓名:肖红阳
password:xiaohongyang退出