I have a PHP script which doesn't work when I insert it directly into header.php or any other file of my Wordpress site theme.
I successfully wrote a cookie. Then I check for this cookie with Java Script and PHP code. But only Java Script returns me "found".
<script language="javascript">
<!--
if (document.cookie.indexOf("users_res") >= 0) {
alert("found");
}
else {
alert("not found");
}
//-->
</script>
<?php
if (isset($HTTP_COOKIE_VARS["users_res"])) {
echo "found";
} else {
echo "not found";
}
?>
When I put this PHP code into test.php and I upload it manually to my site - PHP script shows "found". But when I try to insert the code into header.php or any other PHP file of my WP theme - it shows "not found".
I tested this PHP code with 2 other sites with different themes and WP versions, but still doesn't work.
I think your problem is with $HTTP_COOKIE_VARS
, replace it with $_COOKIE
and it should work, (that is IF your part of the script that is calling $HTTP_COOKIE_VARS
is within a function).
$HTTP_COOKIE_VARS contains the same initial information, but is not a superglobal. (Note that $HTTP_COOKIE_VARS and $_COOKIE are different variables and that PHP handles them as such)
Replace $HTTP_COOKIE_VARS
with $_COOKIE
. $HTTP_COOKIE_VARS
is deprecated and not superglobal what might be the reason you can't access the cookie.
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.