PDA

View Full Version : [php]if (isset($_COOKIE['nome'])) non funziona!!


$te
15-07-2008, 09:05
ho un form per il login, che memorizza il tutto su un cookie.
Questo lo vedo anche via mozzilla (sotto mostra cookie), quindi so dell'esistenza del cookie.

Il problema é che non me lo rileva: facendo:

if (isset($_COOKIE['nome'])){echo'safdsafsadfsafdsaf';}

ed il nome del cookie é giusto!!
come mai?

grazie

$te
15-07-2008, 10:50
per favore...aiutatemi!!!:cry: :cry: :cry: :muro: :muro: :help:

$te
15-07-2008, 19:24
ho posto male la domanda?

demos88
15-07-2008, 21:30
fammi vedere come imposti il cookie, potrebbe essere un problema di path del cookie...

$te
16-07-2008, 07:51
if($password== $controllopass)
{

setcookie("nome", $nome, time() + 600);
setcookie("pass", $password, time() + 600);
header ("Location: login.php");
}

mi sembra giusto. Piu che altro, il fatto che il cookie esiste, lo vedo con mozilla

$te
16-07-2008, 09:49
é un problema cosi grande?

RobyG_08
16-07-2008, 11:05
if($password== $controllopass)
{

setcookie("nome", $nome, time() + 600);
setcookie("pass", $password, time() + 600);
header ("Location: login.php");
}

mi sembra giusto. Piu che altro, il fatto che il cookie esiste, lo vedo con mozilla

Prova a vedere se il valore del cookie è giusto, prova a fare

echo $_COOKIE['nome'];

$te
16-07-2008, 13:20
nn mi printa nulla:muro:

Dânêl
16-07-2008, 19:38
Ciao,
echo $_COOKIE['nome'] non printa nulla i casi possibili sono due:
1)$nome contiente una stringa nulla
2)Il blocco if non viene eseguito. Non ho provato ma se fosse cosi echo $_COOKIE['nome'] dovrebbe generare un errore non esistendo $_COOKIE['nome'].

per il punto 1 devi verificare che $nome contenga effettivamente dei caratteri (echo $nome).
Per il due devi verificare "manualmente" che $password== $controllopass sia una condizione vera.
Prova con un echo o un vardump di entrambe.
Spero che cadendo nel banale sia riuscito ad indirizzarti verso la soluzione

$te
16-07-2008, 20:41
Ciao,
echo $_COOKIE['nome'] non printa nulla i casi possibili sono due:
1)$nome contiente una stringa nulla
2)Il blocco if non viene eseguito. Non ho provato ma se fosse cosi echo $_COOKIE['nome'] dovrebbe generare un errore non esistendo $_COOKIE['nome'].

per il punto 1 devi verificare che $nome contenga effettivamente dei caratteri (echo $nome).
Per il due devi verificare "manualmente" che $password== $controllopass sia una condizione vera.
Prova con un echo o un vardump di entrambe.
Spero che cadendo nel banale sia riuscito ad indirizzarti verso la soluzione

questo problema nn si pone, xké il cookie viene fatto (dato che con mozilla lo visualizzo)

Dânêl
16-07-2008, 20:45
Avevo creduto che ci potesse essere la possibilità che tu l'avessi settato in precedenza nel codice. Distrattamente non mi ero accorto che i setcooke è nel blocco if.

Allora l'unica possibilità è che la variabile $nome sia priva di caratteri.

Considera comunque che il cookie ha la durata di 10min ....che non sia il risultato di qualche tentativo precedente che ne ha portato la creazione...

$te
16-07-2008, 21:34
il problema é proprio che non rileva il cookie con isset!!:cry: :cry: