Buon pomeriggio a tutti! Sono al mio primo face-to-face con i cookie e sessioni e sono disperata:dipser:!
Classica situazione...fatto il login-in di un utente voglio tenerlo in memoria durante tutta la sua permanenza nella mia area riservata, che in pratica consiste in una sola form(pagina di inserimento dati e pagina di risposta) in cui l'utente registrato può inserire dati per effettuare una determinata richiesta.
Provando di usare i cookie:
Ho messo nello script autentica.php (che è lo script richiamato dal submit della form in cui l'utente inserisce Username e password) la seguente istruzione:
\\autentica.php
setcookie("Utente",$UN,0,"..\areaRiservata/richiedi.php");
-$UN è una variabile definita dentro autentica.php, che viene riconsciuta (quindi non è questa a darmi problemi)
E poi, nello script richiedi.php, che viene richiamato da un submit in autentica.php ho messo:
\\richiedi.php
<?php
if(!empty($_COOKIE)) \\ho usato $_COOKIE perchè ho php5
{echo "cookie settato"; }
?>
....ma la stampa non avviene,
e se faccio il controllo opposto:
if(empty($_COOKIE))
{echo "cookie non settato"; }
...non stampa nulla lo stesso.
Ora chiedo a voi che ci capite qualcosa:
-c'è qualcosa di sbagliato? O meglio, cosa c'è di sbagliato?
-per usare i cookie si deve modificare qualche parametro in php.ini?
-l'utilizzo dei cookie richiede solo php o anche altro, tipo javascript o non so che?
-dove devo controllare se i cookie sono disabilitati nel ,mio browser?
-visto che autentica.php e richiedi.php sono divise in <div>, può entrarci qualcosa il div in cui io inserisco le sezioni di codice php?
-all'interno della funzione setcookie le variabili (nel mio esempio $UN) vanno richiamate tra apici, doppi apici o senza nulla?
Se invece provo ad usare le sessioni:
Ho messo in autentica.php, (all'inizio della pagina cioè prima del tag <html>...vero?):
<?php
session_start();
$_SESSION['utente'] = "io";
?>
(provo con una costante "io " prima di mettere la variabile, giusto per vedere se funziona) e in autentica.php ho finito.
Dopo di che, in richiedi.php ho messo, sempre prima di <html>:
<?php
session_start();
$ut=$_SESSION['utente'];
?>
se poi vado a fare la stampa, dentro il codice html in richiedi.php :
<?php
echo $ut;
?>
...non mi stampa nulla!
Ora...cosa ho sbagliato?
Anche se faccio:
echo $_SESSION['utente'];
mi dà questo errore:
Notice: Undefined index: utente in ...\richiedi.php on line 28
Perchè??????????????????
Vi prego...aiutatemi!!!!!!:crying:
Classica situazione...fatto il login-in di un utente voglio tenerlo in memoria durante tutta la sua permanenza nella mia area riservata, che in pratica consiste in una sola form(pagina di inserimento dati e pagina di risposta) in cui l'utente registrato può inserire dati per effettuare una determinata richiesta.
Provando di usare i cookie:
Ho messo nello script autentica.php (che è lo script richiamato dal submit della form in cui l'utente inserisce Username e password) la seguente istruzione:
\\autentica.php
setcookie("Utente",$UN,0,"..\areaRiservata/richiedi.php");
-$UN è una variabile definita dentro autentica.php, che viene riconsciuta (quindi non è questa a darmi problemi)
E poi, nello script richiedi.php, che viene richiamato da un submit in autentica.php ho messo:
\\richiedi.php
<?php
if(!empty($_COOKIE)) \\ho usato $_COOKIE perchè ho php5
{echo "cookie settato"; }
?>
....ma la stampa non avviene,
e se faccio il controllo opposto:
if(empty($_COOKIE))
{echo "cookie non settato"; }
...non stampa nulla lo stesso.
Ora chiedo a voi che ci capite qualcosa:
-c'è qualcosa di sbagliato? O meglio, cosa c'è di sbagliato?
-per usare i cookie si deve modificare qualche parametro in php.ini?
-l'utilizzo dei cookie richiede solo php o anche altro, tipo javascript o non so che?
-dove devo controllare se i cookie sono disabilitati nel ,mio browser?
-visto che autentica.php e richiedi.php sono divise in <div>, può entrarci qualcosa il div in cui io inserisco le sezioni di codice php?
-all'interno della funzione setcookie le variabili (nel mio esempio $UN) vanno richiamate tra apici, doppi apici o senza nulla?
Se invece provo ad usare le sessioni:
Ho messo in autentica.php, (all'inizio della pagina cioè prima del tag <html>...vero?):
<?php
session_start();
$_SESSION['utente'] = "io";
?>
(provo con una costante "io " prima di mettere la variabile, giusto per vedere se funziona) e in autentica.php ho finito.
Dopo di che, in richiedi.php ho messo, sempre prima di <html>:
<?php
session_start();
$ut=$_SESSION['utente'];
?>
se poi vado a fare la stampa, dentro il codice html in richiedi.php :
<?php
echo $ut;
?>
...non mi stampa nulla!
Ora...cosa ho sbagliato?
Anche se faccio:
echo $_SESSION['utente'];
mi dà questo errore:
Notice: Undefined index: utente in ...\richiedi.php on line 28
Perchè??????????????????
Vi prego...aiutatemi!!!!!!:crying: