login  Naam:   Wachtwoord: 
Registreer je!
 Forum

cookies niet verwijderd

Offline Wim - 10/03/2006 20:31 (laatste wijziging 10/03/2006 20:32)
Avatar van WimCrew algemeen Hallo iedereen,

Mijn koekjes worden niet verwijderd ... Raar dus 

  1. <?php
  2. // $global->logout() is deze functie:
  3. function logout () {
  4. setcookie(COOKIE_PREFIX.'userid', '', time()-1, $site['cookie_path'], $site['cookie_domain']);
  5. setcookie(COOKIE_PREFIX.'username', '', time()-1, $site['cookie_path'], $site['cookie_domain']);
  6. setcookie(COOKIE_PREFIX.'password', '', time()-1, $site['cookie_path'], $site['cookie_domain']);
  7. return true;
  8. }
  9. ?>


  1. <?php
  2. //logout.php, klopt normaal ... :s
  3. require_once ('../includes/global.inc.php');
  4. $global->allowUsers('lid');
  5. $global->startpage('members/logout.tpl');
  6.  
  7. if(isset($_POST['logout'])) {
  8. $global->logout();
  9. $tpl->newBlock('logged_out');
  10. }
  11. else
  12. $tpl->newBlock('confirmation');
  13.  
  14. $global->endpage();
  15. ?>


koekjes zijn aangemaakt met:
  1. <?php
  2. setcookie(COOKIE_PREFIX.'userid', $list->id, time()+60*60*24*366, $site['cookie_path'], $site['cookie_domain']);
  3. setcookie(COOKIE_PREFIX.'username', $_POST['username'], time()+60*60*24*366, $site['cookie_path'], $site['cookie_domain']);
  4. setcookie(COOKIE_PREFIX.'password', md5($_POST['password']), time()+60*60*24*366, $site['cookie_path'], $site['cookie_domain'
  5. ?>


vannalles geprobeert maar wijnig/niets werkt ...

Thx,
GDX^

//note: geen errors, maar koekjes worden wel niet verwijderd ...

5 antwoorden

Gesponsorde links
Offline BigBug - 10/03/2006 20:35
Avatar van BigBug PHP expert Misschien kan je unset(); gebruiken. Ik weet niks van TPL @ the moment hoor. Maar je kan toch wel alle functies in tpl gebruiken?

Met unset kan je ook cookies verwijderen voor zover ik weet
Offline Lemon - 10/03/2006 20:43
Avatar van Lemon PHP expert
  1. <?php
  2. function login_destroy_cookie() {
  3. $cookiesSet = array_keys($_COOKIE);
  4. for ($x=0;$x<count($cookiesSet);$x++) {
  5. setcookie($cookiesSet[$x],"",time()-1);
  6. }
  7. }
  8. ?>


This will do the trick
Offline Wim - 10/03/2006 21:03
Avatar van Wim Crew algemeen nope, de truk was om $site globaal te maken, vergeten m.a.w. (omdat hij in de andere functies al bij globals is toegevoegd was ik het hier vergeten )

inloggen/uitloggen gebeurd op path /members/ ipv op /, daarom dat het path en domein niet vergeten mocht worden (domein eigenlijk wel maar swat)

huidige functie:
  1. <?php
  2. function logout () {
  3. global $site;
  4. setcookie(COOKIE_PREFIX.'userid', '', time()-1, $site['cookie_path'], $site['cookie_domain']);
  5. setcookie(COOKIE_PREFIX.'username', '', time()-1, $site['cookie_path'], $site['cookie_domain']);
  6. setcookie(COOKIE_PREFIX.'password', '', time()-1, $site['cookie_path'], $site['cookie_domain']);
  7. return true;
  8. }
  9. ?>


achja, gewoon een half uurtje later nog eens kijken en je ziet je fout :-)
Offline Lemon - 10/03/2006 21:16
Avatar van Lemon PHP expert zorg ervoor dat je een header('location:...'); doet na het instellen van die cookies. Anders worden ze niet verwijderd/aangemaakt. En mijn functie verwijderd alle cookies die gebonden zijn aan je domain. En die werkt 100%.
Offline Wim - 11/03/2006 14:28
Avatar van Wim Crew algemeen aangezien de koekjes in de directory 'members' worden aangemaakt op het domein 'partycore.be' (dus vanaf partycore.be/members') gaat jouw functie in dit geval niet werken 
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2025 Sitemasters.be - Regels - Laadtijd: 0.224s