JS生成cookie并用php读取cookie
博客首页文章顶部的那个,是个广告位,原本想做关闭后多久时间内不会重复出现,但是想用JQ去管理cookie,发现要加个库进来,就放弃了。刚才搜索了下,发现JS写了cookie之后,可以用php来读取,好像也是可以的
JS生成cookie并用php读取cookie,步骤如下:
JS生成cookie
setCookie("open","yes",3600*24);
function setCookie(c_name,value,expiredays)
{
var exdate=new Date()
exdate.setDate(exdate.getDate()+expiredays)
document.cookie=c_name+ "=" +escape(value)+
((expiredays==null) ? "" : ";expires="+exdate.toGMTString()+";path=/")
}
上面以一个函数来实现js生成cookie,setCookie(c_name,value,expiredays)
c_name为cookie的名称,value为cookie的值,expiredays是过期时间,需要注意的是,如果想要这个cookie在整个域名中所有路径都通用,那需要加一个路径 path=/
php读取cookie
<?php
$c_name=$_COOKIE['c_name'];
?>
延伸一下,那么js怎么读取删除cookie呢,php又怎么生成和删除cookie呢?
js读取删除cookie代码
function getCookie(c_name)//取cookies函数
{
var arr = document.cookie.match(new RegExp("(^| )"+c_name+"=([^;]*)(;|$)"));
if(arr != null) return unescape(arr[2]); return null;
}
function delCookie(c_name)//删除cookie
{
var exp = new Date();
exp.setTime(exp.getTime() - 1);
var cval=getCookie(c_name);
if(cval!=null) document.cookie= c_name + "="+cval+";expires="+exp.toGMTString();
}
php生成和删除cookie
<?php
//将过期时间设为一小时后
setcookie("c_name", $val, time() + 3600);
//php删除cookie,两种方法
setcookie("c_name","", time() - 10);//可以理解为提前过期
setcookie("c_name","");//或者直接让cookie为空也可以删除
?>
文章来自:http://www.dn59.com/jquery-ajax-js/jishu/2012/1211/js-get-cookie-php-read-cookie.html
转载本站原创文章请注明:文章转自 挨踢路,链接: https://itlu.net./articles/2068.html