Newsgroup: it.comp.www.php
Titolo: Problema di cookie

Ho fatto in modo che venga settato un cookie che serve per riconoscere 
l'utente quando torna sul sito.
Addirittura, siccome non ci sono problemi di sicurezza, viene 
automaticamente loggato.
Quando l'utente vuole chiudere il login, per svolgere operazioni da NON 
loggato, preme esci e viene eseguito questo codice
<?php
 session_start();
 $_SESSION = array();
 if (isset($_COOKIE[session_name()])) {
     setcookie(session_name(), '', time()-42000, '/');
 }
 session_destroy();
 header ("Location: index.php");
 exit;
?>
Ora, viene rimandato alla prima pagina, che però controlla il cookie e lo 
riologga.
COME FARE PER FARLO USCIRE MOMENTANEAMENTE DAL LOGIN? 

 COME FARE PER FARLO USCIRE MOMENTANEAMENTE DAL LOGIN? 
Momentaneamente?!
David
- --
Linux Registered User #334216
Get FireFox! >> 
http://www.spreadfirefox.com/?q=affiliates&id=48183&t=1
Staff >> 
http://www.debianizzati.org
 <<
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.9.20 (GNU/Linux)
Comment: Using GnuPG with Mozilla - 
http://enigmail.mozdev.org
iD8DBQFFI3RI5sXXcRsFI+cRAqy/AKCgYpNwVD/tvqxTvR9MGKB7zH/HywCdH+u+
b9mcuEYMouFeaqlTePW5AP0=
=OKDS
-----END PGP SIGNATURE-----

Al login non imposto nessun cookie manualmente.
Immagino vengano scritti alcuni cookie di sessione.
Che vengono regolarmente cancellati con quella riga di codice
 if (isset($_COOKIE[session_name()])) {
      setcookie(session_name(), '', time()-42000, '/');
  }
  session_destroy();
Io invece imposto manualmente a login avvenuto un cookie per riconoscere 
l'utente con:
setcookie ("autologin", $codice_utente_loggato.','.$password);
Quando l'utente fa il logout, perň non posso cancellare il cookie dal suo PC 
altrimenti viene meno il riconoscimento la volta dopo che entra nel sito.
Per cui devo cancellare solo il cookie di sessione.
Io per ora passo un parametro, e se ha premuto logout, viene cancellata la 
sessione, e non prova a fare il rilogin, ma pensavo ci fosse un sistema piů 
potente, per non dover passare parametri in get, da tutte le pagine che 
puntano alla home.
Infatti, facendo logout, navigando un'alta pagina, e poi tornando alla home, 
ci si rilogga, perchč non passo quel parametro.
Ecco perchč cercavo di cancellare solo la sessione. Ma penso che senza 
impostarne un'altra che identifica il logout, tutte le volte che si arriva 
da un'altra pagina, il login viene riprovato tramite il cookie.
IN SOSTANZA
Anche se l'utente ha il cookie sulla macchina, deve poter navigare senza 
essere riconosciuto.

 essere riconosciuto.
Prova la soluzione che ti ho dato sopra: imposta un'altra variabile di
sessione, e controlli/modifichi quella quando ti serve la navigazione
"da loggato" e quando fai il logout...
Non credo esista qualche cosa che possa fare al caso tuo :S
Saluti,
David
- --
Linux Registered User #334216
Get FireFox! >> 
http://www.spreadfirefox.com/?q=affiliates&id=48183&t=1
Staff >> 
http://www.debianizzati.org
 <<
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.9.20 (GNU/Linux)
Comment: Using GnuPG with Mozilla - 
http://enigmail.mozdev.org
iD8DBQFFI7dm5sXXcRsFI+cRAov7AJ43IZRBsVjEJSAht158BgCuRsZWZQCcDbQC
/B/0opacSSqXJZrL/vsbzJs=
=3c6x
-----END PGP SIGNATURE-----