PHP cookie - 未设置Cookie

时间:2014-07-10 14:20:03

标签: php cookies

我在设置之前检查cookie是否已设置(作为唯一变量)。它正在我的LocalHost上工作,但它不能在现场工作。

他们在我的域名的php.ini文件中被允许。

代码:

$bits = 3;
$cookieID = bin2hex(openssl_random_pseudo_bytes($bits));
if (!isset($_COOKIE["UserID"])) { //check cookie is not set
    setcookie("UserID", $cookieID, time()+(60*60*24*30), '/', 'domain.co.uk');
    $_COOKIE["UserID"] = $cookieID; //call the cookie to use immediately.
}
setCookie("Testing", "Test"); //testing
$UserID = "'" . $_COOKIE["UserID"] . "'";
echo $_COOKIE["UserID"]; //check cookie is there

测试cookie或UserID cookie都无法正常工作。

根本没有设置cookie。在其他任何事情之前,代码都在我的header.php的顶部。我已尝试取消设置Cookie并再次执行此操作,但我的Google Chrome设置中也没有Cookie。


编辑:

我已经在其他地方看过了,似乎没有任何答案可以解决我的问题或者做出不同的事情。

据我所知,这还没有得到回答。至少没有一个可以解决我的问题。


编辑:

我现在已经设置了Cookie,但是Cookie没有在整个域中保存,而是在每个页面上进行更改。 (好像if (!isset...)无效。

修改

我修好了。

$bits = 3;
$cookieID = bin2hex(openssl_random_pseudo_bytes($bits));
if (!isset($_COOKIE["UserID"])) {
    setCookie("UserID", $cookieID, 0, "/", "domain.co.uk");
};

我的主要问题是我过度复杂了,所以我把它恢复到以前的状态,然后在" /"中更改了一些内容。和" domain.co.uk"现在它有效。

0 个答案:

没有答案