Home >Backend Development >PHP Problem >What to do if PHP fails to set cookies

What to do if PHP fails to set cookies

爱喝马黛茶的安东尼
爱喝马黛茶的安东尼Original
2019-09-28 15:57:083142browse

What to do if PHP fails to set cookies

Use setcookie to set cookies on a certain page, for example:

setcookie("id",$id, time()+36002430);

But after returning to the homepage, I found that it did not take effect. Use javascript:alert(document.cookie) It is empty, and $_COOKIE in PHP also has no data.

Go to the PHP official website to check the instructions for setcookie. The example on the official website is also like this, but after carefully looking at the parameter description, I discovered the problem.

Related recommendations: "php Getting Started Tutorial"

The fourth parameter of setcookie is path:

The path on the server in which the cookie will be available on. If set to ‘/’, the cookie will be available within 
the entire domain. If set to ‘/foo/’, the cookie will only be available within the /foo/ directory and all 
sub-directories such as /foo/bar/ of domain. The default value is the current directory that the cookie is being 
set in.

That is to say, if the fourth parameter If it is empty, it will only take effect in the current directory by default. Under normal circumstances, there is no problem.

But my site is set up with rewrite and index.php is hidden, so the set cookie is only valid on this page.

The solution is to add the fourth parameter:

setcookie("id",$id, time()+36002430 ,'/');

The above is the detailed content of What to do if PHP fails to set cookies. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn