setcookie(setcookie无效)
本篇文章给大家谈谈setcookie,以及setcookie无效对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
php无法存储cookie
setcookie('sUserName','额');
没有设置作用域和目录,默认的是当前页面
bool setcookie ( string name [, string value [, int expire [, string path [, string 腔橡domain [, bool secure]]]]] )
setcookie() 定义一个和其余的 HTTP 标头一起发送的 cookie。和其它标头一源唯样,cookie 必须在脚本的任何其它输出之前发送(这是协议限制)。这需要将本函数的调用放到任何输出之前,包括 雹圆培html 和 head 标签以及任何空格。如果在调用 setcookie() 之前有任何输出,本函数将失败并返回 FALSE。如果 setcookie() 函数成功运行,将返回 TRUE。这并不说明用户是否接受了 cookie。
参数详解请查看图片,相信对你有帮助
[img]使用php创建cookie 以后为什么需要刷新才会生效
以
setcookie('name', "Garen");
echo $_COOKIE['name'];
为例;第一次访问在执行setcookie('name', "举扒Garen");之前, PHP 已经从请求体重获取所有的 cookie(在$_COOKIE中),然后到setcookie('name', "Garen");的时候,只是设置了名为name 的 cookie;这部只是保存进浏览器,但是并没有赋值给$_COOKIE,$_COOKIE并没有变化,所有也就没有$_COOKIE['name'],执行到echo $_COOKIE['name'];就会报错.第2次访问获取浏览器中所有的 cookie 时,已经有了上次添铅答穗加的这个名槐卜为name 的 cookie 了,所以可以显示
如何设置cookie的服务器路径
Cookie的setPath()方法,指定的是可访问该Cookie的目录!默运冲纤认只有同一个Web服务器上同一个路径下设置了该cookie的网页读取!如果你想让这个cookie在多个页面中共享,那么需要使用Cookie的setPath()方法设置path
cookie.setPath("/"),在Tomcat的webapps目录下的所有目录中共享这个cookie。
cookie.setPath("/app1"),只能在app1应用下获取这个cookie,就算这个cookie是app2产生的,app2也不能访问它。
cookie.setPath("/app1/action"),只能判闹在app1/action目录下获取这个cookie。
我想你应该可以明白了,cookie的路径指的是可以访问该cookie的顶层目录,该路径的子路径也旁仿可以访问该cookie。
====
在中设置的cookie,但需要在zhidao.baidu.com下获取,这样就需要Cookie的setDomain()方法了。
cookie.setPath("/");
cookie.setDomain("baidu.com");//只给出域名的相同部分
response.add(cookie);
php获取cookie后怎么使用
php获取cookie使用方法:
cookie和session都可以暂时保存在多个页面中使用的变量,但是它们有本质的差别。cookie存放在客户端浏览芹岩启器中,session保存在服务器上。它们之间的联系是session ID一般保存在cookie中。
cookie工作原理
当客户访问某个网站时,在PHP中可以使用setcookie函数生成一个cookie,系统经处理把这个cookie发送到客户端并保存在c:Documents and Settings用户名\Cookies目录下。cookie是HTTP标头的一部分,因此setcookie函数必须在任何内容送到浏览器之前调用。这种限制与header()函数一样。当客户再次访问该网站时,浏览器会自动把c:Documents and Settings用户名\Cookies目录下与该站点对应的cookie发送到服务器,服务器则把从客户端传来的cookie将自动地转化成一个PHP变量。
通过$_COOKIE['xxx']读取客户端发来的cookie。
创建 cookie
通过 setcookie() 函数来创建一个 cookie ,成功返回 TRUE ,否则返回 FALSE 。
语法:
bool setcookie( string name [, string value [, int expire [, string path [, string domain ]]]] )
参数说明:
name cookie 名称
value 可选,cookie 值
expire 可选,过期时间,时间戳格式
path 可选,服务器端有效路径,/ 表示整个域名有效,默认为当前设置 cookie 时页面的路径
domain 可选,该 cookie 有效的域名
?php
setcookie("username", "nostop", time()+3600); //设置了一个名称为 username 的cookie,其值为 xiaoli ,并在1小时候后过期。如果时间也被省略,cookie 将会在会话结束后(一般是浏览器关闭)失效。
?
cookie 会以一定格式被存储在用户计算机特定位置。
?php
setcookie("username", "nostop", time()+3600, "/", ".example.com"); //在example.com 域名的 / 路径下该 cookie 都有效枣亏(即全站有效)。
?
读取 cookie
PHP 内置了 $_COOKIE 变量以访问设置的 cookie 值。
例子:
?php
echo $_COOKIE["username"]; //nostop
?
销毁 cookie
可以通过设置 cookie 过期时间为以前的时间点来销毁一个 cookie :
?php
setcookie("username", "", time()-3600);
?
cookie注意事项
1、SetCookie()之前不能有任何html输出,就是空格,空白行都不行。
2、SetCookie()后,你在当前页调用echo $_COOKIE["name"]不会有输出。必须刷新或到下一个页面在过期之前才可以看到Cookie值。
3、由于 cookie 信息存储于用户的计算机中,那么就有可能伪造或修改 cookie 从而造成 cookie 欺骗,一般可以对 cookie 的值进行加密来预防欺骗。读取 cookie 的时候,对 cookie 解密即可。
4、Cookie是保存在客户端的,用户禁用了Cookie,你的Cookie自然也就没作用啦!嫌如
?php
setcookie('username','nostop',time()+3600); //创建cookie
if(isset($_COOKIE["username"])){ //使用isset()函数检测cookie变量是否已经被设置
echo "您好!".$_COOKIE["username"]; //您好!nostop 读取cookie
}else{
echo "请登陆";
}
?
关于setcookie和setcookie无效的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。