Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/244.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 检索网站内部所有页面中的Cookie值_Php_Cookies_Setcookie - Fatal编程技术网

Php 检索网站内部所有页面中的Cookie值

Php 检索网站内部所有页面中的Cookie值,php,cookies,setcookie,Php,Cookies,Setcookie,我在一个项目中使用cookies值来检查输入的访问者,首先,存在一个submit post表单来输入电子邮件地址,提交后,设置cookies(对于下一个到当前页面的导航,如果设置了cookies,则应直接进入主页而不是表单页面),一切正常,cookies设置正确,但是在导航到另一个页面后,数据将丢失,并且不存在cookies!!!Cookie应该在所有页面导航中都有效吗??下图显示了一些代码 if((!$_COOKIE["tickets"] && $_COOKIE["email_

我在一个项目中使用cookies值来检查输入的访问者,首先,存在一个submit post表单来输入电子邮件地址,提交后,设置cookies(对于下一个到当前页面的导航,如果设置了cookies,则应直接进入主页而不是表单页面),一切正常,cookies设置正确,但是在导航到另一个页面后,数据将丢失,并且不存在cookies!!!Cookie应该在所有页面导航中都有效吗??下图显示了一些代码

if((!$_COOKIE["tickets"] && $_COOKIE["email_address"]) || (empty($_COOKIE['tickets']) && empty($_COOKIE['email_address']))){
$access_vcount=intval(getCurrentValueAccess())+1;
if(getCurrentValueAccess()==0){$query_vcounts=mysql_query("insert into visitors_counter(counter) VALUES('$access_vcount')");}
else{$query_vcounts=mysql_query("update `visitors_counter` set counter='".$access_vcount."'");}
setcookie("tickets", "accessible", time()+86400);
setcookie("email_address", $email_address, time()+86400);
}
header("Location:".BURL."/".getflink(2,'en'));  
cookies的有效期为一天(应该是一天)。 当我尝试打印另一页中的值是cookies时,则没有结果

谢谢您的建议。

语法

bool setcookie ( string $name [, string $value [, int $expire = 0 [, string $path [, string $domain [, bool $secure = false [, bool $httponly = false ]]]]]] )
必须正确设置路径,因为cookie仅对该路径下的路径和目录有效

服务器上的路径,cookie将在其中可用。如果 设置为“/”,cookie将在整个域中可用。如果 设置为“/foo/”,cookie将仅在/foo中可用/ 目录和域的所有子目录,如/foo/bar/。这个 默认值是正在设置cookie的当前目录 在


在重定向页面上设置cookie时,cookie必须在调用header('位置:…')之后设置

例如:

<?php
  header('Location: http://www.example.com/'); 
  setcookie('asite', $site, time()+60*60, '/', 'site.com');  ?>



处的评论粘贴的BURL是否与设置cookies的页面相同(子)域?BURL=基本url,在我的例子中是:,设置cookies时的页面是:BURL/pages/submit.phpi将代码更新为:setcookie(“tickets”,“accessible”,time()+86400,“/”,BURL);可能您在调用
setcookie()
函数的哪个页面不起作用?那页的路径是什么?我认为路径不能设置!它是可选的,如果为空,则cookie属于所有路径;BURL=基本url站点(),cookies设置的页面是:BURL/pages/submit.phpAnd?成功了吗?如果答案是肯定的,那么最好完成这个问题。将答案标记为corrent cough;)在答案的左边,是这个带有上下箭头的计数器。正下方是一张白色支票。如果你点击它,它将变为绿色,这标志着anweser是正确的。如果他们正在解决你的问题,你应该始终接受答案,他是如何帮助你为此赢得一些分数的,这就是Stackoverflow让工作变得有趣的原因。