Seite 1 von 1
Cookie setzen funktioniert nicht?
Verfasst: 04.02.2007 19:04
von Ambience
Hallo,
ich weiß nicht wie ihr das mit dem Bannen regelt, aber üblicher weise wird doch die ip gesperrt und ein cookie gesetzt?
dieses hatte ich auch versucht nur leider funktioniert das nicht so wie ich will..
Code: Alles auswählen
<?php
setcookie('banned', 'das ist ein testcookie', time()+60*4320*365);
echo $_COOKIE['banned'];
?>
ich müsste doch bei dem echo folgendes erhalten: "das ist ein testcookie"
dies ist aber leider nicht der fall und ich weiß nicht woran das liegt...
Cookies von anderen Seiten funktionieren, nur meines nicht... Mach ich da nun irgendwas falsch oder woran liegt das?
Verfasst: 04.02.2007 19:19
von Stefane
Nahmd,
Also an der Art, wie du den Cookie eingegeben hast, ist nix falsch...auch nicht am Auslesen des Cookies.
Allerdings wird dir der Cookie dann erst nach dem Neuladen der Seite ausgegeben, soweit ich weiß...
Du könntest du das Vorhandensein des Cookie ja mal mit
Code: Alles auswählen
if (isset($_COOKIE['cookie'])) {
echo "Cookie ist da";
}
überprüfen...wenn er dann da ist, kannst du ihn auch ausgeben.
Verfasst: 04.02.2007 19:55
von S2B
Stefane hat geschrieben:Allerdings wird dir der Cookie dann erst nach dem Neuladen der Seite ausgegeben, soweit ich weiß...
Stimmt. Das würde auch gar nicht anders gehen, da der PHP-Teil (set_cookie()) ja zunächst mal auf dem Server ausgeführt und dann in einem Header an den Clienten (Browser) geschickt wird. Auf den hat der Server aber keinen Zugriff, also muss er "warten", bis der Client den Cookie bei einem erneuten Aufrufen der Seite an den Server schickt.
Verfasst: 04.02.2007 20:02
von Ambience
ja so mach ich das ja... cookie setzen neuladen und versuchen auszugeben... funktioniert aber nicht...
Verfasst: 04.02.2007 20:35
von S2B
Normal sollte das funktionieren, außer natürlich der Browser akzeptiert keine Cookies von deiner Seite oder kann nicht damit umgehen (das ist aber eher unwahrscheinlich, nur ältere Browser hatten z.T. Probleme, wenn einige Parameter von setcookie() nicht gesetzt waren, siehe [php:setcookie]).
Aber warum sollte beim Bannen ein Cookie beim Client gesetzt werden?

Verfasst: 04.02.2007 20:41
von BB-BF-BM
Testest du dein Skript lokal auf deinem Rechner?
Dann gib nicht
http://localhost/ sondern
http://127.0.0.1/ an. Das hat bei mir gewirkt.
Ansonsten solltest du vielleicht die Kommentare auf
php.net lesen. Vielleicht helfen sie dir...
Verfasst: 04.02.2007 21:16
von Ambience
nu funktioniert es auch bei mir...
vielen dank