Was soll ich tun, wenn ich PHP-Cookies nicht löschen kann?

藏色散人
Freigeben: 2023-03-08 10:00:02
Original
1805 Leute haben es durchsucht

Die Lösung für das Problem, dass PHP-Cookies nicht gelöscht werden können: Erstellen Sie zunächst eine PHP-Beispieldatei, und legen Sie schließlich die Gültigkeitsdauer dieses Cookies auf einen Zeitpunkt vor dem aktuellen Zeitpunkt fest, um das erstellte Cookie zu löschen.

Was soll ich tun, wenn ich PHP-Cookies nicht löschen kann?

Die Betriebsumgebung dieses Tutorials: Windows 7-System, PHP-Version 7.1, DELL G3-Computer

PHP kann COOKIE nicht löschen? Gültigkeitsdauer für Cookies festlegen

PHP unterstützt transparent HTTP-Cookies. Cookies sind ein Mechanismus, der Daten auf der Remote-Browserseite speichert und zur Verfolgung und Identifizierung von Benutzern verwendet. Cookies können mit den Funktionen setcookie() oder setrawcookie() gesetzt werden. Cookies sind Teil des HTTP-Headers, daher muss die Funktion setcookie() aufgerufen werden, bevor andere Informationen an den Browser ausgegeben werden, was den Einschränkungen für den Header ähnelt ()-Funktion.

setcookie();
Nach dem Login kopieren

Die Möglichkeit, ein Cookie zu löschen, besteht darin, die Gültigkeitsdauer dieses Cookies auf vor der aktuellen Zeit festzulegen

setcookie('test', 'true', time() + 300); // 创建 cookie
//setcookie('test',time() - 3600 );  // 清除建立的 cookie
//setcookie('test'); //只是将 $_COOKIE['test'] 的值清空
如果直接setcookie('test', '');
echo '';
print_r($_COOKIE); //attay();
Nach dem Login kopieren

Sie werden feststellen, dass das $_COOKIE-Array leer ist, nicht nur $_COOKIE['test'] ist leer Winsock erfasst das Paket und beobachtet die Rückgabe. Der http-Header lautete wie folgt:

set-cookie:test=deleted; expires=Mon, 29-May-2014 10:22:15 GMT
Nach dem Login kopieren

Login:

setcookie('username', 'zhangsan', time()+1000, "/php100");
Nach dem Login kopieren

Exit:

setcookie('username', '', time()-3600);
Nach dem Login kopieren

Es ​​wurde festgestellt, dass es beim Beenden im IE kein Problem gibt, aber beim Testen in Firefox ist die Anmeldung normal und kann nicht beendet werden. Überprüfen Sie die Cookie-Datensätze in IE und Firefox. Nach dem Test wurde festgestellt, dass der vierte Parameter (legaler Pfadparameter) von setcookie() nicht angegeben wurde, sodass die Pfade der beim Anmelden und Beenden festgelegten Cookies unterschiedlich waren (Firefox ist strenger, was zur Rekonstruktion verschiedener Variablen führt) [Empfohlene Studie: „PHP-Video-Tutorial“]

Beispiel:

$value = 'something';
setcookie('TestCookie', $value, time() + 3600);
setcookie('mytest', $value, time() + 3600, "~rasmus", ".maoge.com", 1);
if (isset($_COOKIE['TestCookie']))
{
echo 'TestCookie :' . $_COOKIE['TestCookie'];
}
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWas soll ich tun, wenn ich PHP-Cookies nicht löschen kann?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!