Hallo,
Het standaard gedeelte van mijn site is nu af maar ik stuit tegen een probleem. Na een bepaalde tijd kan ik niet meer uitloggen. Ook cookies verwijderen lukt opeens niet meer. Ik heb een pagina aangemaakt waar alleen dit in staat:


<?php
setcookie("gebruikersnaam", "", time() - 3600); 
?>

<?php
echo "".$_COOKIE['gebruikersnaam']."";
?>


Op Mozilla werkt dit prima en word gebruikersnaam geleegd, maar bij IE zie ik mijn gebruikersnaam nog steeds staan, hij wil maar niet worden verwijderd. En hierdoor kan ik op mijn site dus ook niet meer uitloggen. Kan iemand me helpen of zeggen wat ik nu moet doen?
echo "".$_COOKIE['gebruikersnaam']."";
waarom gebruik je daar vier keer een " en 2x een .
je kunt ook geoon echo $_COOKIE['gebruikersnaam'];
ja, maar daarmee is het probleem niet opgelost.
Probeer eens:

<?php

// verwijder variabele
unset($_COOKIE['gebruikersnaam']);

// of

// Leeg $_COOKIE global
$_COOKIE = array();

?>
Waarom doe je ook time() - 3600 stel er zijn al 45 min voorbij dan krijg je dus een veel andere tijd.
Zet time gewoon 0 als dat werkt en ander 1 ofzo
ik weet niet hoe of wat, maar ik kon opeens weer inloggen en uitloggen. (maar waarschijnlijk kan ik over een kwartiertje weer niet uitloggen. dan zal ik die code eens proberen)
Ga sessies gebruiken, veel en veel makkelijker ;)

<?php
session_start(); // Altijd voordat er iets wordt gestuurd (net zoals header();)

// sessie maken
$_SESSION['gebruikersnaam'] = 'Gerben pHp';

// sessie gebruiken
echo $_SESSION['gebruikersnaam'];

// sessie deleten
unset($_SESSION['gebruikersnaam'];

// sessie stoppen
session_destroy();



// sessie stoppen op een uitgebreide manier

// Alle sessies deleten
$_SESSION = array();

// Cookie met daarin het Sessie id ongeldig maken
if (ini_get("session.use_cookies")) {
$params = session_get_cookie_params();
setcookie(session_name(), '', time() - 42000,
$params["path"], $params["domain"],
$params["secure"], $params["httponly"]
);
}

// Sessie vernietigen
session_destroy();

?>

Werkt op dezelfde manier als gewone variabelen!
Als je het gaat gebruiken voor inlogsystemen en dergelijke, dan moet je wel eventjes op google kijken, want er bestaat ook nog zoiets als Session Hijacking enzo...
Sessies zijn velemalen makkelijker
Ook zijn ze veiliger omdat die een uniek id hebben

Cookies zijn handig ja je hoeft voor een gedurende tijd niet inteloggen
Maar cookies kan je stelen en sessies niet
Sessies kun je wel stelen, maar dat kan knap ingewikkeld zijn als je een goede beveiliging maakt. Als je een goed inlogsysteem wil, waarbij je bijvoorbeeld ingelogd bent als je cookie voldoet aan een aantal eisen, dan zou ik cookies en sessies combineren :)

Zelf ben ik aan het kijken hoe sessies en cookies veiliger kunnen...

Reageren