php Cookie范例应用
Cookie范例应用
这是一个Cookie的简单应用,首先通过header()函数发送Cookie,跟踪用户来访信息,记录用户的访问次数,然后再提交一个表单。
本范例实现了简单的计数器功能,又通过提交表单来展示Cookie的工作原理。介绍了它在当前页面保存了什么信息,同时又在下一次的访问中显示Cookie输出了什么信息。
运行结果如图1所示。

图1 计数器和表单功能实现
范例的完整代码如下:
<?php if (!empty ($_COOKIE['shili'] ))
$shili = ++$_COOKIE['shili'] ;
else $shili = 1 ;
$expires = date ( "1,d-m-y h:i:s",time()+54000 ) ;
header ("set-cookie: shili = $shili ; expires = $expires;") ;
echo "你已经访问本页$shili 次了!<br>";
echo "<br/>"; //本段代码是实现简单的计数器功能
?>
<?php if (isset ($_GET['color'])){
setcookie ("shili_color",$_GET['color']) ; //获取当前颜色的值
echo "COOKIE当前选择的颜色:<b>{$_GET['color']}</b><br/>" ; //输出当前提交颜色的值
}else{ echo "没有选择颜色.请挑选一种.<br/>" ; }
if (isset ($_COOKIE["shili_color"])){
echo "<br/>" ;
echo "COOKIE保存的值: <b>{$_COOKIE['shili_color']}</b><br/>"; //输出cookie保存的数据信息
} ?>
<form action="<?php echo $_SERVER['PHP_SELF']?>" method="get">
<font color="red"><input type="radio" name="color" value="red"/>红色火焰<br/> </font>
<font color="blue"> <input type="radio" name="color" value="blue"/>蓝天<br/></font>
<font color="green"><input type="radio" name="color" value="green"/>绿色草地<br/></font>
<font color="yellow"><input type="radio" name="color" value="yellow"/>丰收的金黄<br/></font>
<font color="black"><input type="radio" name="color" value="black"/>夜晚的黑暗<br/></font>
<input type="submit" value="请选择"/>
</form>
注意:Cookie首先必须在HTML文件的内容输出之前设置;其次,一个浏览器能创建的Cookie数量最多为30个,并且每个不能超过4KB,每个Web站点设置的Cookie总数不能超过20个。