Heim  >  Artikel  >  Backend-Entwicklung  >  Was tun, wenn PHP keine Cookies setzen kann?

Was tun, wenn PHP keine Cookies setzen kann?

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

Was tun, wenn PHP keine Cookies setzen kann?

Verwenden Sie setcookie, um Cookies auf einer bestimmten Seite zu setzen, zum Beispiel:

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

Aber nachdem ich zur Homepage zurückgekehrt war, stellte ich fest, dass es keine Wirkung zeigte :alert(document.cookie) Es ist leer und $_COOKIE in PHP enthält ebenfalls keine Daten.

Gehen Sie zur offiziellen PHP-Website, um die Anweisungen für setcookie zu überprüfen. Das Beispiel auf der offiziellen Website sieht auch so aus, aber nachdem ich mir die Parameterbeschreibung sorgfältig angesehen habe, habe ich das Problem entdeckt.

Verwandte Empfehlungen: „php-Einführungs-Tutorial

Der vierte Parameter von setcookie ist Pfad:

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.

Das heißt, wenn der vierte Parameter Wenn es leer ist, wird es standardmäßig nur im aktuellen Verzeichnis wirksam. Unter normalen Umständen gibt es kein Problem.

Aber meine Seite ist mit Rewrite eingerichtet und index.php ist ausgeblendet, sodass das gesetzte Cookie nur auf dieser Seite gültig ist.

Die Lösung besteht darin, einen vierten Parameter hinzuzufügen:

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

Das obige ist der detaillierte Inhalt vonWas tun, wenn PHP keine Cookies setzen kann?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn