Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/278.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 - Fatal编程技术网

Php Cookie无法设置

Php Cookie无法设置,php,cookies,Php,Cookies,我有一个不会在远程服务器上设置的cookie,works在本地查找。没有错误消息,var_dump获取空值,echo为空 <php setcookie('ymp','14', time()+3600); session_start(); ?> 我可以很好地设置javascript cookie。开始标记是页面的第1行 有什么想法吗 谢谢 加里 编辑 我有一些评论,我张贴在下面,这是一个3文件的过程 第一页是设置cookie,如上所述 第二页我要调试的 <php va

我有一个不会在远程服务器上设置的cookie,works在本地查找。没有错误消息,var_dump获取空值,echo为空

<php
 setcookie('ymp','14', time()+3600);
 session_start();
?> 

我可以很好地设置javascript cookie。开始标记是页面的第1行

有什么想法吗

谢谢 加里

编辑

我有一些评论,我张贴在下面,这是一个3文件的过程

第一页是设置cookie,如上所述

第二页我要调试的

<php var_dump($_COOKIE['ymp']); echo'<br />'.$_COOKIE['ymp'];?>

第三页,这一切都在本地有效

 <?php
 if($_COOKIE['ymp']!=='14')
 {die('Sorry, you have not had your delightful little pastry yet.... try again.');}

我设置了一个js cookie,并更改了代码以反映不同的cookie名称,它工作得很好

我还将时间重置为+86400,因为服务器有两个小时的时差,尽管我认为这不是必需的

谢谢你的帮助


Gary

在发出新页面请求之前,您无法读取cookie的值。这是因为cookie数据的值随页面请求一起发送。因此,在设置它并发出新页面请求之前,它无法访问其值


另外,
session\u start()
对cookie没有影响。它们是两种不同的东西。(会话通常使用cookies来存储会话ID,但这与此无关)。

这很奇怪-我认为这可能与PHP配置有关

查看
setcookie
函数的返回值-如果在函数调用之前已经发送了输出,则返回值为。您确实在脚本的开头提到了它,但是可能有其他实体输出数据(可能是服务器上预执行的脚本?)

您的浏览器也可能被设置为不接受来自特定域的cookie-请检查您的配置


请提供任何其他相关代码,并说明如何检查是否设置了cookie。

此问题从未解决,我最终将一个新文件写入同一主机上的另一个域,并为cookie指定了不同的名称和值(是否可能是2位数的3字符名称cookie太小?)它的工作正如预期的那样

谢谢大家的帮助。。。太忙了,没时间做CSI的调查


Gary

这可能是因为您没有为cookie指定路径和/或域。请尝试以下方法:

<?php
    setcookie('ymp','14', time()+3600, '/', 'yourdomain.com')
?>


您是否知道您正在设置的cookie将在设置后3.6秒过期?@brunoveira这不是真的。@brunoveira
time()+3600
是1小时!不是毫秒。是的,我犯了一个错误,太多了recently@Gary,您使用什么代码读取cookie?它显然在本地服务器上工作,因此我认为问题不在于刷新页面。这是一个3文件过程,首先是应该设置cookie的页面。在第二页,为了调试起见,如果有:在第3页,这些都在本地机器上工作,我检查了Chrome和Firefox开发工具中的cookie,以及我创建的用于检查php.ini的phpinfo()文件。我设置了js cookie,它显示在所有3个页面上,而php setcookie()没有。我已将路径、域、重新配置的过期时间添加到36000…您是否尝试从
setcookie
输出结果,以查看它是否至少报告成功?