[php] cookies verwijderen

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Lijkt heel simpel, en hoort het volgens mij ook te zijn, maar volgens mij zie ik op de een of andere manier iets over het hoofd.. Het gaat over een inlogsysteem, bij het uitloggen moeten ook de cookies verwijderd worden. logout.php heeft alleen de volgende inhoud:
PHP:
1
2
3
4
5
require('include/page.php');
setcookie("cookie_username");
setcookie("cookie_password");
session_destroy();
Forward($_LAYOUT->_prefix.'index.php');

Omdat volgens mij setcookie(); aanroepen met alleen de cookienaam hem zou moeten verwijderen, toch? Maar de cookie blijft gewoon bestaan (op de volgende pagina, print_r($_COOKIE);)

Doe ik nou iets verkeerd of moet het op een andere manier? Ik heb ook setcookie met een negatieve verloopdatum geprobeerd..

Acties:
  • 0 Henk 'm!

  • semicolon
  • Registratie: Mei 2004
  • Niet online
Heb je dit al geprobeert?
PHP:
1
setcookie ("cookie_username", "", time() - 3600);

[ Voor 21% gewijzigd door semicolon op 04-12-2004 19:57 ]

:D/-<


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Verwijderd schreef op zaterdag 04 december 2004 @ 19:54:
[...] Ik heb ook setcookie met een negatieve verloopdatum geprobeerd..
Ja dus ;)

edit:
Misschien wat onduidelijk omschreven sorry, omdat de verloopdatum op zich niet negatief is natuurlijk, maar ik bedoelde idd time() - een of ander getal

[ Voor 31% gewijzigd door Verwijderd op 04-12-2004 20:00 ]


Acties:
  • 0 Henk 'm!

Verwijderd

Geef je bij het verwijderen dezelfde parameters mee als bij het aanmaken? Komen de path en het domein overeen?

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Dat was het inderdaad, ik had verschillende cookies aangemaakt met path en domain, en na die allemaal verwijderd te hebben en bij het verwijderen van de cookie ook hetzelfde path en domain mee te geven als het path en domain waarmee hij is aangemaakt werkte het wel. Bedankt!!

Acties:
  • 0 Henk 'm!

  • KurtDB
  • Registratie: Juni 2004
  • Laatst online: 13-09 11:55
PHP:
1
2
3
<?php
unset($_COOKIE);
?>


Als je echt veel cookie-values moet verwijderen, dan is dit ook 'n optie.

Acties:
  • 0 Henk 'm!

Verwijderd

KurtDB schreef op zondag 05 december 2004 @ 02:04:
PHP:
1
2
3
<?php
unset($_COOKIE);
?>


Als je echt veel cookie-values moet verwijderen, dan is dit ook 'n optie.
Ja, dan delete je alleen de superglobal in het geheugen, dat lijkt me zeer handig. Niet echt dus. Dan kun je beter even het volgende doen:
PHP:
1
2
3
4
5
6
if ( !headers_sent () ) {
   foreach ( array_keys ( $_COOKIE ) as $key ) {
      setcookie ( $key, null, null, '/' );
   }
}
$_COOKIE = array ();
Pagina: 1