Slet cookie
Jeg har problemmer med at få slettet mine cookies, i forbindelse med en bruger logger ud.Når brugeren logger ud køres denne kode:
<?php
Class logudController Extends baseController {
public function index() {
/*** dellet saved information ***/
$this->registry->template->cookiestatus = '';
//kill session
$_SESSION = array();
if (isset($_COOKIE[session_name()])) {
setcookie(session_name(), '', time()-42000, '/');
}
session_destroy();
//kill cookie
if (isset($_COOKIE['login']))
{
setcookie("login[username]", "", time() - 3600);
setcookie("login[hash]", "", time() - 3600);
$this->registry->template->cookiestatus = '<br>Dit gemte login (cookie), er også blevet slette.';
}
//fake loginstatus
$this->registry->loginstatus = false;
/*** set a template variable ***/
$this->registry->template->settitle('Logud');
$this->registry->template->index(false);
/*** add elements to the menu ***/
$this->registry->template->menu('Profil','Logud');
/*** load the index template ***/
$this->registry->template->show('index');
}
}
?> (altså logudController->index();)
Når en cookie bliver lavet køres denne kode:
if (isset($_POST['save']))
{
setcookie("login[username]", $rows['brugernavn'], time()+(60*60*24*30));
setcookie("login[hash]", $rows['hash'], time()+(60*60*24*30));
}
Til hjælp til at teste udskriver login siden dette:
<?php
$layout->top('Farvel '.$username);
?>
<strong>Du er nu logget ud.</strong><br>
Der skal gøres opmærksom på at dette ikke er nødvendigt.
<?php
echo $_CONTROL['cookiestatus'];
$layout->subtitle('Print_r udskrift');
echo '<pre>';
print_r($_COOKIE);
print_r($_SESSION);
echo '</pre>';
$layout->bottom();
?>
Hvis det er en hjælp selv at logge ud og ind, kan det gøres her (http://mvc.netkogeren.a-mweb.dk) med...
brugernavn: eksperten
kodeord: test
