Home >Backend Development >PHP Problem >What should I do if php cannot set cookies?

What should I do if php cannot set cookies?

藏色散人
藏色散人Original
2021-09-12 09:33:432650browse

Solution to the problem that php cannot set cookies: 1. Execute "ob_start();" at the beginning of the PHP program; 2. Modify the server time or increase the cookie life; 3. Set the correct scope; 4 , use parameterized url to pass cookie value, etc.

What should I do if php cannot set cookies?

The operating environment of this article: Windows 7 system, PHP version 7.1, DELL G3 computer

What should I do if php cannot set cookies?

PHP program cannot set cookie

1. The PHP program has output before executing setcookie.

Solution:

Check the program before setcookie to see if there is a carriage return or space before the PHP code

Or:

Execute ob_start() at the very beginning of the program;

2. The PHP cookie life is too short and will die before it takes effect

To check this problem, you can execute time() in the PHP program; see if the difference between the server time and the local time exceeds the survival time

Solution: Modify the server time or increase the cookie life.

3. PHP cookie scope is incorrect

First set the cookie scope to / to see if there is any problem. If the problem is solved, set it to the correct scope

4. Users are prohibited from using cookies

This is not the fault of the program. However, it can be solved by using parameterized url to pass the cookie value or session.

5. Other questions

6. Thanks to fjytzh on the third floor for the supplement. This situation mostly occurs in older programs. . This effect is equivalent to register_global=on.

Many programs (for example: forums) extract the values ​​​​of $_COOKIE, $_GET, $_POST

and then $_COOKIE, $_GET , the value of $_POST is unset.

This kind of thing is relatively simple, and I have no way to prevent it. Just pay attention when developing.

Of course you won’t be able to access it later if you use $_COOKIE['XXXX']

7. The most idiotic question

The cookie value is empty. How to do this without using it? I said it

There is a carriage return before the PHP code

I have not noticed this before...

There is another Quite an idiot question

Many programs (for example: forums) extract the values ​​​​of $_COOKIE, $_GET, $_POST

and then add $_COOKIE, $_GET, $_POST and other values Unset is gone

Of course, later access using $_COOKIE['XXXX'] will not be accessible

This is suitable for modifying other complete systems.

Recommended learning: "PHP Video Tutorial"

The above is the detailed content of What should I do if php cannot 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