PHP中Cookie的使用---添加/更新/删除/获取Cookie 及 自动填写该用户的用户名和密码和判断是否第一次登陆 

什么是cookie

服务器在客户端保存用户的信息,比如登录名,密码等

这些数据就像小甜饼一样,数据量并不大,服务器端在需要的时候可以从客户端读取,保存在客户端的浏览器缓存目录下

①   当浏览器访问,cookie.php时,服务器还以Set-Cookie:name=zxf;expire=Wed,21-Sep-2017 20:14 GMT会送http响应,当浏览器获取到该消息后,就会保存该cookie的信息到本地磁盘

②   如果我们没有时间(第三个参数)

cookie不会保存到客户端,当浏览器会话结束,cookie会失效

③   cookie保存的是字符串信息

④   客户端可以保存多个key=>val

⑤   cookie在保存过程中,会对中文进行urlencode编码

cookie可以有多个key=>val,可以给不同的键值,制定不同的有效时间

代码如下:xx.php

<?php

//添加cookie

setcookie("name","zxf",time()+3600);

//数组

/$arr = array(1,2,3);

$arr_str = serialize($arr);

setcookie("a",$arr_str,time()+3600);

//获取cookie

var_dump($_COOKIE);

//更新cookie

setcookie("name","aaa",time()+3600);

//删除cookie

setcookie("name","",time()-20);

//删除所有

foreach ($_COOKIE as $key => $value) {

setcookie($key,"",time()-1);

}

echo "成功";

?>

如果你删除的cookiekey=>val没有删除完,则这个cookie在客户端保留,如果把这个网站的cookie都删除的,则浏览器会把cookie文件删除

判断是否第一次登陆

<?php

//先判断cookie里是否有上次的登录信息

if(!empty($_COOKIE[‘lastVisit’])){

echo “你上次登陆的时间是”.$_COOKIE[‘lastViat’];

//更新时间

setcookie(“lastVisit”,”data(Y-m-d  H:i:s)”, time()+3600);

}else{

//说明用户是第一次登陆

echo”第一次登陆”;

//更新时间

setcookie(“lastViait”,”data(“Y-m-d  H:i:s”)”, time()+3600);

}

?>

打开登陆界面的时候,自动填写该用户的用户名和密码

checklogin.php

//获取用户是否选中了保存id

if(!empty($_POST[‘cookie’])){

setcookie(“id”,$id,time()-100);

}else{

if(!empty($_COOKIE[‘id’])){

setcookie(“id”,$id,time()-10);

}

}

PHP中Cookie的使用---添加/更新/删除/获取Cookie 及 自动填写该用户的用户名和密码和判断是否第一次登陆的更多相关文章

  1. SVN的搭建及使用(三)用TortoiseSVN修改文件,添加文件,删除文件,以及如何解决冲突,重新设置用户名和密码等

    添加文件 在检出的工作副本中添加一个Readme.txt文本文件,这时候这个文本文件会显示为没有版本控制的状态,如图: 这时候,你需要告知TortoiseSVN你的操作,如图: 加入以后,你的文件会变 ...

  2. Dom4j 添加 / 更新 / 删除 XML

    1.获得文档 /** *1.获得解析流 *2.解析XML */ 2.添加 /** *1.获取父元素 *2.创建元素 *3.创建属性并添加到元素中 *4.元素添加到根节点 */ 3.更新 /** *1. ...

  3. 想当然是编程最大的坑,记更新删除过期cookie无效有感

    一般来说只要设置了cookie的过期时间,就可以实现删除cookie的作用. 可是我尝试了设置过期时间,清除cookie内容都无效. 最后才发现,我根本没有执行到那段设置过期的代码. 刚开始是因为登出 ...

  4. js中数组元素的添加和删除

    js中数组元素常用添加方法是直接添加.push方法以及unshift方法 删除方法则是delete.pop.shift 集修改方法为一身的则是splice 1.添加: (1)直接添加通常都是这样 va ...

  5. ado.net 批量添加 更新 删除

    自曾列就别往下看 别折腾了   使用 SqlBulkCopy ,dataTable 必须跟sql里面的表字段完全一样 下面在sqlserver中演示 mysql 请google MySqlBulkLo ...

  6. JQuery中对option的添加、删除、取值

    jQuery获取Select选择的Text和Value: 1. $("#select_id").change(function(){//code...});    //为Selec ...

  7. DOM 添加 / 更新 / 删除 XML (CURD)

    获得Document /**     * 获取文档     * 1.获得实例工厂     * 2.获得解析器     * 3.获得document     */ 添加结点 /**     * 1.获得 ...

  8. Mysql添加更新删除数据-表

    例如 此处拥有一个表名为 uuser 为表添加新数据 ,'); ,'); ,'); 假如只想添加uid和uname ,'小张'); 那么pas自动填充为NULL. 为表更新数据 这里把小王的pas改成 ...

  9. 在主函数中提示用户输入用户名和密码。另写一方法来判断用户输入是否正确。该方法分别返回一个bool类型的登录结果和和一个string类型的登录信息。如登录成功,返回true及“登录成功”,若登录失败则返回false及“用户名错误”或“密码错误”(使用out参数)

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...

随机推荐

  1. java打包jar后,使之一直在linux上运行,不随终端退出而关闭

      nohup java -jar xxx.jar&

  2. Swift 里 Array (一)内存结构

    public struct Array<Element>: _DestructorSafeContainer { #if _runtime(_ObjC) @usableFromInline ...

  3. golang 并发顺序输出数字

    参考 package main import ( "fmt" "sync/atomic" "time" ) func main() { va ...

  4. iframe 自适应高度和宽度

    <iframe src="pay/index.aspx" marginheight="0" marginwidth="0" frame ...

  5. Hadoop和Apache Spark的异同

    谈到大数据,相信大家对Hadoop和Apache Spark这两个名字并不陌生.但我们往往对它们的理解只是提留在字面上,并没有对它们进行深入的思考,下面不妨跟我一块看下它们究竟有什么异同. 1.解决问 ...

  6. Git for Windows之使用SSH协议开通公钥免密登陆功能

    1.删除Https的通信方式,建立SSH的通信方式 (1).查看当前的通信方式 当前是使用Https的方式与远程仓库进行通信 (2).删除HTTPS的通信方式 ok,HTTPS通信方式已删除 (3). ...

  7. Java 多线程学习笔记:wait、notify、notifyAll的阻塞和恢复

    前言:昨天尝试用Java自行实现生产者消费者问题(Producer-Consumer Problem),在coding时,使用到了Condition的await和signalAll方法,然后顺便想起了 ...

  8. 关于C++11中的std::move和std::forward

    std::move是一个用于提示优化的函数,过去的c++98中,由于无法将作为右值的临时变量从左值当中区别出来,所以程序运行时有大量临时变量白白的创建后又立刻销毁,其中又尤其是返回字符串std::st ...

  9. SqlServer 查看被锁的表和解除被锁的表

    查看被锁的表 1 2 select   request_session_id   spid,OBJECT_NAME(resource_associated_entity_id) tableName   ...

  10. 第一个WCF程序

    WCF的服务需要寄宿在进程中,我们把服务端的叫做宿主,为服务指定宿主指定的过程叫服务寄宿.有两种方式一种是自我寄宿(Self-Hosting),一种是IIS寄宿方式.Self-Hosting我们通过一 ...