PHP之cookie详解

来源:互联网 发布:lua编程软件 编辑:程序博客网 时间:2024/06/08 20:18

cookie基本操作:

<span style="font-size:18px;"><?php// 什么是会话:// 打开浏览器,访问某个网站的很多页面(通过点击超连接), 当你关闭浏览器后,一个会话结束.// cookie是保存在客户端.header("Content-type: text/html; charset=utf-8"); //演示如何创建cookie信息//把用户名和密码保存到客户端的cookie//setCookie()这个函数用于保存cookie//第一个参数表示cookie一个key 第二个参数表示 val,第三个参数表示cookie值在客户端中保存的时间,按秒计算// key <-->value// key <--->value//.....$time=date('Y-m-d H:i:s');setCookie("name","wml",time()+3600);setCookie("password","123456",time()+30);setCookie("address","北京",time()+300);setCookie("time","$time",time()+300000000);echo "保存成功!";// 对代码说明// ① 当浏览器访问  cookie.php页面的时候,我们的服务器就会以// Set-Cookie: name=wml; expires=Wed, 21-Sep-2011 07:53:25 GMT 回送http响应,当浏览器获取到该信息后,就会保存该cookie 的新到// 本机的  c:/xxx/admin/cookies文件.// ② 如果我们如果没有该时间(第三个参数)//   cookie不会保存到客户端,当浏览器的会话结束,我们的cookie就失效.// ③ cookie只能保存字符串信息.// ④ 客户端可以保存多个 key<==>value 对// ④ cookie也可以保存中文,默认将会对中文进行 urlencode编码// ⑥ cookie 可以有多个 键<==>值 对,可以给不同的键值 ,指定不同的有效时间.// 从客户端获取保存的cookie信息 (查询)//获取cookie信息echo "<pre>";print_r($_COOKIE);echo "</pre>";//获取指定的key对应的值$name=$_COOKIE['name'];$password=$_COOKIE['password'];echo "name=".$name;echo "<br>";echo "password=".$password;echo "<br>";// 对代码说明:// ① 如果cookie有效时间到,则不能取出.// ② 客户端cookie信息是怎样传递给服务器//   通过 http协议的 //   Cookie: name=wml//   这个机制是http协议 规定// 更新cookie信息// 更新某个cookie key<==>val 实际上就是重新设置// setCookie();//更新setCookie("address","天津",time()+300);echo "把 键 address的值更新了";echo "<br>";// 删除cookie信息//删除某个key 只需要把 time()-秒数//setCookie("name","",time()-200);echo "删除name key成功!";echo "<br>";//删除所有的 keyforeach($_COOKIE as $key=>$val){    //setCookie($key,"",time()-100);}echo "删除所有cookie成功!";echo "<br>";// 如果你删除的 cookie的 key<==>value 没有删除完,则这个cookie在客户端保留,如果你把这个网站的所有cookie都删除,则浏览器会把 cookie文件删除.?></span>


利用cookie实现显示上次登录时间:

<span style="font-size:18px;"><?phperror_reporting(E_ALL^E_NOTICE);//利用cookie实现显示上次登录时间header("Content-type: text/html; charset=utf-8");date_default_timezone_set('PRC');$time=$_COOKIE['login_time'];if ($time==''){    $now_time=date('Y-m-d H:i:s');    setCookie("login_time","$now_time",time()+300000000);}else{    echo "您上次登录时间是:".$time."<br>";    $now_time=date('Y-m-d H:i:s');    setCookie("login_time","$now_time",time()+300000000);}?></span>

利用cookie实现自动填充用户名密码:

登录界面:

<span style="font-size:18px;"><!DOCTYPE html><html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"></head><body><h1>  登录界面</h1><div class="login" style="margin-top:50px;">    <form action="login.php" name="loginform" accept-charset="utf-8" id="login_form" class="loginForm" method="post">        <div class="uinArea" id="uinArea">            <label class="input-tips" for="u">帐号:</label>            <div class="inputOuter" id="uArea">                                   <input type="text"                 value="<?php                error_reporting(E_ALL^E_NOTICE);                                                 //利用cookie实现自动填写用户名密码                         $username=$_COOKIE['username'];                         if ($username!=='')                         echo $username;                        ?>"                        name="username"/>            </div>        </div>        <div class="pwdArea" id="pwdArea">            <label class="input-tips" for="p">密码:</label>             <div class="inputOuter" id="pArea">                                   <input type="password" id="p" name="pwd" value="<?php                error_reporting(E_ALL^E_NOTICE);                         //利用cookie实现自动填写用户名密码                         $password=$_COOKIE['password'];                         if (isset($password))                         echo $password;                        ?>"/>            </div>        </div>        <div>************************************************************************************</div>        <input type="radio" name="sex" value="yes">保存账号密码<br>                       <div style="padding-left:50px;margin-top:20px;"><input type="submit"  style="width:150px;"  value="登 录" /></div>    </form></div></body></html></span>

login.php文件:

<span style="font-size:18px;"><?php$username1=$_POST['username'];$password1=$_POST['pwd'];$sex=$_POST['sex'];//$time=$_COOKIE['login_time'];if ($sex=='yes'){    setCookie("username","$username1",time()+300000000);    setCookie("password","$password1",time()+300000000);}else{    setCookie("username","",time()-200);    setCookie("password","",time()-200);}?></span>


0 0
原创粉丝点击