小李飞帖 2007-7-18 12:29
简单学习动态网页制作PHP中的Cookies
[WIKI]Cookie[/wiki]是什么呢?
Cookie通常用来验证或辨别一个用户。Cookie是通过[wiki]服务器[/wiki]发送到用户计算机中的一个小文件。每次,当相同的计算机通过浏览器请求一个页面时,原先存储的cookie也会发送到服务器。你可以使用[wiki]PHP[/wiki]来创建和获取cookie的值。
怎样创建一个cookie呢?
Setcookie()函数是用来设置一个cookie的。
注意:setcookie()函数必须在[wiki]HTML[/wiki][wiki]标签[/wiki]之前。
语法
[ 复制 ][ 运行代码 ][ - ]CODE:setcookie(name, value, expire, path, domain);
案例
在下面这个例子中,我们将创建一个名为“user”的cookie并把“Alex Porter”这个值赋给它;同时,我们还规定cookie将在一小时后过期:
[ 复制 ][ 运行代码 ][ - ]CODE:?php
setcookie("user", "Alex Porter", time()+3600);
?
html
body
/body
/html
注意:当发送cookie时,cookie值是自动进行URL编码[URLencoded]的;当受到cookie时,自动进行URL解码。(如果你不希望进行URL编码,可以使用setrawcookie()函数替代)
如何获取cookie值?
PHP $_COOKIE变量是用来获取一个cookie值的
在下面这个例子中,我们获取了名为“user”的值并将它显示在页面上:
[ 复制 ][ 运行代码 ][ - ]CODE:?php// [wiki]PR[/wiki]int a cookieecho $_COOKIE["user"];// A way to view all cookies
print_r($_COOKIE);
?
我们使用isset()函数来检查cookie是否被设置:
[ 复制 ][ 运行代码 ][ - ]CODE:html
body?php
if (isset($_COOKIE["user"]))
echo "Welcome " . $_COOKIE["user"] . "!br /";
else
echo "Welcome guest!br /";
?/body
/html
如何删除一个cookie?
当你要删除一个cookie时,你必须确保cookie已经过期。
案例:
[ 复制 ][ 运行代码 ][ - ]CODE:?php
// set the expiration date to one hour agosetcookie("user", "", time()-3600);
?
如果浏览器不支持Cookie怎么办?
如果你的浏览器不支持cookie,你必须使用其他方法将一个页面的信息传输到另一页面中。其中一个方法就是使用[wiki]表单[/wiki]