Salve, volevo sapere come mai le variabili di sessione non funzionano come dovrebbero nel senso che quando faccio una prima volta l'autenticazione non vengono registrati i valori, se ritorno indietro e faccio dinuovo l'autenticazione i valori vengono memorizzati, come mai?

ecco un esempio di script;


controlla.php file che effettua l'autenticazione
Codice PHP:
 ?
session_start();
ob_start();
include(
"ricerca.php");
include(
"errors.php");


$pass = (isset($_POST['pass']))?$_POST['pass']:''
$user = (isset($_POST['user']))?$_POST['user']:''
$profilo = (isset($_POST['profilo']))?$_POST['profilo']:''




$return=ricerca('profilo',$profilo,'user',$user,'pwd',$pass);
$val=explode(","$return);


switch(
$val[0]){
case -
1:
errore("Utente non Registrato");;
break;

case 
admin:
$_SESSION['logged']=$val[0];
$percorso="http://".$_SERVER["HTTP_HOST"]."/area/admin2.php";
header("Location: $percorso ");
break;

case 
tesserato:
$_SESSION['logged']=$val[0];
$_SESSION['cartella']=$val[1];
//echo $_SESSION['cartella'];

//echo "Stampo l'array val: $val[1]";
$percorso="http://".$_SERVER["HTTP_HOST"]."/area/album/".$val[1]."/";
//echo "stampo variabile di sessione cartella: ".$_SESSION['cartella'];
header("Location: $percorso ");
break;



}


?> 
index.php che vede se sono settate le variabili di sessione

Codice PHP:
<?
session_start
();
$_SESSION['logged']=isset($_SESSION['logged'])?$_SESSION['logged']:'Variabile di sessione non settata'
$_SESSION['cartella']=isset($_SESSION['cartella'])?$_SESSION['cartella']:'Variabile di sessione non settata'

include(
"../../array.php");
include(
"../../errors.php");


if(
$_SESSION['logged']==admin OR ($_SESSION['logged']==tesserato AND $_SESSION['cartella']==folders())){
?>



<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="it" lang="it">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>area</title>
</head>
<body bgcolor="#ffffff">
OK VA BENE SESSIONE OK!!!

</body>
</html>

<?
}
else
{

echo 
"Stampo la cartella: ".folders()."
"
;
echo 
"Stampo la variabile di sessione cartella: ".$_SESSION['cartella']."
"
;
echo 
"Stampo la variabile di sessione logged: ".$_SESSION['logged']."
"
;
errore("Utente NON AUTORIZZATO");

}

?>