Cookie
SvenP - 23/06/2006 14:39
PHP interesse
ik heb een probleem met mijn cookies.
om de cookie leeg te halen, gebruik ik dit script:
<?php
session_start();
ob_start();
setcookie("id", "");
setcookie("username", "");
setcookie("password", "");
?>
<META HTTP-EQUIV=Refresh CONTENT="0; URL=../index.php">
<?
ob_end_flush();
?>
<?php
?>
<META HTTP-EQUIV=Refresh CONTENT="0; URL=../index.php">
<?
?>
als ik op Uitloggen klik in IE wertie wel,
maar in FireFox niet..:o
iemand enig idee waar dat aan kan liggen?
9 antwoorden
Gesponsorde links
Rien91 - 23/06/2006 14:41 (laatste wijziging 23/06/2006 14:43)
HTML interesse
Probeer zoiets is:
setcookie("cookienaam", "", time() - 3600);
En staat die meta tag wel in de <head>?
marten - 23/06/2006 14:46
Beheerder
Citaat:
Als je het cookie initieel geen timestamp, of de timestamp 0 geeft, zal het cookie automatisch verwijderd worden wanneer je je browser afsluit.
FanGorn
GTW - 23/06/2006 14:49
PHP gevorderde
bij een cookie moet ook een path meegegeven worden.
<?php
setcookie("cookienaam","value",time()+3600,"/");
?>
SvenP - 23/06/2006 14:53
PHP interesse
Citaat:
hij leest die hele cookie dingen niet eens,
want zo zou die toch echt leeg moeten worden ;)
dat script in mijn eerste post is logout.php ;)
mijn gegevens blijven in de cookie staan....Â
Thomas - 23/06/2006 14:55
Moderator
Je vergeet een path in te stellen. Als je geen path instelt is het cookie alleen in de huidige folder (de folder waarin je het cookie set) geldig.
Aan je META-tag te zien spring je een directory omhoog... Je cookies zullen dus waarschijnlijk niet verwijderd worden / zijn.
Daarnaast is het gebruik van META-tags op deze manier niet echt verstandig. Ook het gebruik van ob_start() enzo is niet nodig.
Gebruik voor het redirecten gewoon de header()-functie, en zorg dat je je sessie afsluit voor het redirecten èn zorg ervoor dat je script meteen ophoudt na het redirecten.
Aldus:
<?php
session_start();
setcookie("id", "", time()-3600, "/");
setcookie("username", "", time()-3600, "/");
setcookie("password", "", time()-3600, "/");
session_write_close(); // sluit sessie voor schrijven
header("Location: ../index.php"); // weet niet of dit werkt
exit(); // beeindig script
?>
<?php
header ( "Location: ../index.php" ) ; // weet niet of dit werkt exit ( ) ; // beeindig script ?>
Gesponsorde links
Dit onderwerp is gesloten .