• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

怎样使用php与jquery设置和读取cookies_PHP

php 搞代码 4年前 (2022-01-25) 29次浏览 已收录 0个评论
文章目录[隐藏]

jQuery

HTTP协议是一种无状态协议,这意味着你对网站的每一个请求都是独立的,而且因此无法通过它自身保存数据。但这种简单性也是它在互联网早期就广泛传播的原因之一。

不过,它仍然有一种方法能让你用cookies的形式来保存请求之间的信息。这种方法使你能够更有效率的进行会话管理和维持数据。

有两种处理cookies的方式—服务端(php,asp等)和客户端(javascript).在这个教程中,我们将学习到以php和javascript这两种方式如何去创建cookies。

Cookies and php

setting cookies
在php中创建cookie你需要用到setcookie这个方法。它需要些参数(除了第一个参数是必需的,其它参数都是可选的)
复制代码 代码如下:
setcookie(
‘pageVisits’, //cookie名字,必需的
$visited, //cookie的值
time()+7*24*60*60, //过期时间,设置为一个星期
‘/’, //cookie可用的文件路径
‘demo.tutorialzine.com’ //cookie绑定的域名
)

如果过期时间设置为0(默认设置也是0),那么当浏览器重启时cookie将会丢失。
参数’/’表示你域名下所有文件路径cookie都可以用(当然你也可以为它设置单一的文件路径,例:’/admin/’)。

你还可以传给个这个函数别两个额外的参数,这里没有给出。它们被规定为boolean类型的。
第一个参数表示cookie仅在一个安全的HTTPS连接才运转,而第二个参数表示不能使用javascript操作cookie。

对大多数人来说,你只需要第四个参数,剩下的就忽略了。

reading cookies
用php读取cookie就简单多了。所有的传给脚本的cookies都在$_COOKIE这个超级全局数组里。
在我们的例子里,可以用下面的代码来读取cookies:
复制代码 代码如下:
$visits = (int)$_COOKIE[‘pageVisits’]+1;
echo “You visited this site: “.$visits.” times”;

值得注意的地方是,当下一个页面加载好时,也可以用$_COOKIE来取得你用setcookie方法设置的cookies,
你应该意识到了什么。

deleting cookies
为了删除cookies,仅仅需要用setcookie函数为cookies设置一个已经过去时间做为过期就行了。
复制代码 代码如下:
setcookie(
‘pageVisits’,
$visited,
time()-7*24*60*60, //设置为前一个星期,cookie将会被删除
‘/’,
‘demo.tutorialzine.com’
)

Cookies and jQuery
在jquery中使用cookies,你需要一个插件Cookie plugin.

Setting cookies
用Cookie plug-in设置cookies是很直观的:
复制代码 代码如下:
$(document).ready(function(){

// Setting a kittens cookie, it will be lost on browser restart:
$.cookie(“kittens”,”Seven Kittens”);

// Setting demoCookie (as seen in the demonstration):
$.cookie(“demoCookie”,text,{expires: 7, path: ‘/’, domain: ‘demo.tutorialzine.com’});

// “text” is a variable holding the string to be saved
});

Reading cookies
读取cookie甚至更简单,只需要调用$.cookie()方法,给它一个cookie-name就可以了,这个方法会返回cookie的值:
复制代码 代码如下:
$(document).ready来@源gao*daima.com搞@代#码网搞gaodaima代码(function(){

// Getting the kittens cookie:
var str = $.cookie(“kittens”);

// str now contains “Seven Kittens”
});

Deleting cookies
删除cookie,只需要在次使得$.cookie()方法,把第二个参数设置为null就可以了。
复制代码 代码如下:
$(document).ready(function(){

// Deleting the kittens cookie:
var str = $.cookie(“kittens”,null);

// No more kittens
});

完整例子:
demo.php
复制代码 代码如下:
<?php
// Always set cookies before any data or HTML are printed to the page
$visited = (int)$_COOKIE[‘pageVisits’] + 1;
setcookie( ‘pageVisits’, // Name of the cookie, required
$visited, // The value of the cookie
time()+7*24*60*60, // Expiration time, set for a week in the future
‘/’, // Folder path, the cookie will be available for all scripts in every folder of the site
‘demo.tutorialzine.com’); // Domain to which the cookie will be locked
?>



<meta http-equiv=”Content-Type” content=”text/html; charset=utf-8″ />
MicroTut: Getting And Setting Cookies With jQuery & PHP | Tutorialzine demo
<link rel=”stylesheet” type=”text/css” href=”styles.css” mce_href=”styles.css” />


<!—ecms -ecms
$(document).ready(function(){

var cookie = $.cookie(‘demoCookie’);

// If the cookie has been set in a previous page load, show it in the div directly:
if(cookie) $(‘.jq-text’).text(cookie).show();


$(‘.fields a’).click(function(e){
var text = $(‘#inputBox’).val();

// Setting a cookie with a seven day validity:
$.cookie(‘demoCookie’,text,{expires: 7, path: ‘/’, domain: ‘demo.tutorialzine.com’});

$(‘.jq-text’).text(text).slideDown(‘slow’);

e.preventDefault();
});

$(‘#form1’).submit(function(e){ e.preventDefault(); })
})
// –>

<body>

MicroTut: Getting And Setting Cookies With jQuery & PHP


Go Back To The Tutorial »



<?php echo $visited?>



搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:怎样使用php与jquery设置和读取cookies_PHP

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址