login  Naam:   Wachtwoord: 
Registreer je!
 Forum

cookies verwijderen

Offline webstab - 02/04/2005 18:57 (laatste wijziging 02/04/2005 19:44)
Avatar van webstabPHP ver gevorderde http://img165.exs.cx/img165/6492/uitloggen8yj.jpg

Dit krijg ik wanneer ik mij wil uitloggen op mijn site.
  1. <?php
  2. $query2 = "UPDATE leden SET online='0' WHERE id='".$_SESSION['gId']."'";
  3. mysql_query($query2) or die (mysql_error());
  4. Setcookie("usernaam", "", Time() + 60 * 60 * 24 * 2190);
  5. Setcookie("userwacht", "", Time() + 60 * 60 * 24 * 2190);
  6. $_SESSION = array();
  7. $_SESSION['ingelogd'] = 0;
  8. header("Location: ?");
  9. ?>

Dit is de hele pagina. Maar niet iedereen krijg die error. Waaraan kan dit liggen? (aan mijn instellingen of aan iets anders).

(Hoe doen jullie dat hier? Want hier heb ik er geen last van?)

24 antwoorden

Gesponsorde links
Offline CelestialCelebi - 02/04/2005 19:59
Avatar van CelestialCelebi PHP gevorderde Misschien omdat je een cookie voor 2190 dagen probeert te setten? Dat is bijna 10 jaar.

En dat voor iemand die uitlogt?

Verder moet je header('Location: ?'); veranderen in iets zinnigs, bijvoorbeeld index.php ofzo..
Offline nemesiskoen - 02/04/2005 20:07
Avatar van nemesiskoen Gouden medaille

PHP expert
Citaat:
Verder moet je header('Location: ?'); veranderen in iets zinnigs, bijvoorbeeld index.php ofzo..


moet niet, dit gaat automatisch naar $_SERVER['PHP_SELF'] en het bespaart de moeite dat te schrijven... je moet - gebruiken ipv +

SetCookie( "usernaam", "", Time() - ( 60 * 60 * 24 * 2190 ) );
Offline webstab - 02/04/2005 20:34 (laatste wijziging 02/04/2005 20:36)
Avatar van webstab PHP ver gevorderde Aan die 2190 dagen ligt het niet,want dat heb ik al eens gewijzigd.
En het minteken verandert er ook niets aan.
Offline CelestialCelebi - 02/04/2005 21:53
Avatar van CelestialCelebi PHP gevorderde En dat vraagteken dan? ...
Offline webstab - 02/04/2005 21:58
Avatar van webstab PHP ver gevorderde Dat doet het ook niet.
Of ik daar nu index.php of een ? typ,dat doet hetzelfde
Offline Rens - 02/04/2005 22:00
Avatar van Rens Gouden medaille

Crew algemeen
Hmmz.
Je start de sessies niet.
Dan verwijder je de sessies, daarna zet je sessie 'ingelogd' op 0.

Dat zal het niet zijn, maar het is toch behoorlijk raar...:s
Offline webstab - 02/04/2005 22:04
Avatar van webstab PHP ver gevorderde Ik start de sessie daarboven.
index.php?pagina=leden&actie=loguit
En helemaal vanboven op de index-pagina wordt de sessie gestart. Maar bij veel mensen werkt dit wel,dus wss ligt het ergens aan mijn instellingen op de pc
Offline Rens - 02/04/2005 22:05 (laatste wijziging 02/04/2005 22:06)
Avatar van Rens Gouden medaille

Crew algemeen
zet de pagina hier eens neer?
(de link dan...)
kijken of het werkt...
Offline webstab - 02/04/2005 22:11
Avatar van webstab PHP ver gevorderde Maar dat gaat natuurlijk niet werken,want je moet daarvoor ingelogd zijn. Maar op welke manier worden hier de cookies verwijderd?
Offline Rens - 02/04/2005 22:13
Avatar van Rens Gouden medaille

Crew algemeen
hier worden geen cookies verwijderd.
hier worden alleen cookies gemaakt en sessies verwijderd.

cookies verwijderen doe je zo:
  1. setcookie ("TestCookie", "", time() - 3600);

de tijd-een uur of sow, of 2 uur, als er maar tijd af gehaalt word 
Offline CelestialCelebi - 02/04/2005 22:14 (laatste wijziging 02/04/2005 22:15)
Avatar van CelestialCelebi PHP gevorderde Cookies verwijder je niet. Je zet de verlooptijd naar een tijd in het verleden, dat is iets anders dan verwijderen..

En vergeet ook de andere 3 parameters van setcookie() niet.
Offline nemesiskoen - 02/04/2005 22:20
Avatar van nemesiskoen Gouden medaille

PHP expert
euh
is php niet hoofdlettergevoelig als het om functies gaat...
zoja, dan bestaat Time() niet
maar moet het time() zijn....

SetCookie( "usernaam", "", time() - ( 60 * 60 * 24 * 2190 ), "/" );
Offline Rens - 02/04/2005 22:22
Avatar van Rens Gouden medaille

Crew algemeen
neej, php is niet hoofdlettergevoelig als het om functies gaat...
Offline CelestialCelebi - 02/04/2005 22:22
Avatar van CelestialCelebi PHP gevorderde In PHP zijn alle functies lowercase, dus ook setcookie(), maar PHP voert setcookie() ook uit als jij SetCookie() of zelfs sEtCoOkIe() intypt..
Offline webstab - 03/04/2005 08:45
Avatar van webstab PHP ver gevorderde Ik heb zojuist is gekeken waar de fout precies zit.
Dus één voor een een regel verwijderen en dan opnieuw proberen.
En wanneer ik deze regel wegneem,krijg ik die error niet meer.
  1. $_SESSION = array();
Met deze regel wil ik eigelijk de sessies leegmaken. Kan dat ook op een andere manier?
Offline CelestialCelebi - 03/04/2005 09:30
Avatar van CelestialCelebi PHP gevorderde Ja, dat kan:

  1. <?php
  2. $a = $_SESSION;
  3. $_SESSION = &$a;
  4. $a = array();
  5. ?>


... Dat doet dus precies hetzelfde. Hoe jij die sessie leeghaalt is goed, maar kun je dan niet beter gewoon unset($_SESSION['id']); doen?
Offline webstab - 03/04/2005 09:53 (laatste wijziging 03/04/2005 09:56)
Avatar van webstab PHP ver gevorderde Dat gaat mss ook beter,maar dan zou ik dat voor ong 20 session-variables moeten doen.Maar met jouw manier lukt het ook niet,ik krijg juist dezelfde error.
Wanneer je session_destroy(); doet, worden dan automatisch alle session-variables leeg gemaakt?
Offline Rens - 03/04/2005 09:55
Avatar van Rens Gouden medaille

Crew algemeen
uhm, waarom zou je dat voor elke sessie apart doen?
je kunt ook gewoon session_unset() doen, dan unset je ALLE sessies;-)
Offline webstab - 03/04/2005 10:02
Avatar van webstab PHP ver gevorderde Ik krijg steeds dezelfde error met session_unset(); en wanneer ik dat wegdoe heb ik hem niet meer.
Maar is het waar dat session_destroy(); alle sessies unset?
Offline Rens - 03/04/2005 10:05
Avatar van Rens Gouden medaille

Crew algemeen
session_destroy verwijdert alle sessies, dus jah...
maar welke error krijg je dan met session_unset()?
Offline webstab - 03/04/2005 10:12
Avatar van webstab PHP ver gevorderde Nog altijd degene die in het eerste bericht staat.
Offline BNoise - 03/04/2005 12:08
Avatar van BNoise Nieuw lid doe eens eerst setcookie en daarna pas de mysql query, als ik graaf in mn geheugen moeten cookies altijd voordat er een output geweest is. (ik kan ook miszitten..)
Offline bosgroen - 03/04/2005 12:23
Avatar van bosgroen Gouden medaille

PHP interesse
@BNoise,
let niet op hem, een query is geen output.
Offline BNoise - 03/04/2005 12:38
Avatar van BNoise Nieuw lid
Citaat:
(ik kan ook miszitten..)


dacht ik al:p
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.26s