da un form vado ad una pagina di login dove controllo i campi e se giusti scrivo le variabili nella sessione, altrimenti fa il redirect.

Il problema è che dopo il redirect io chiamo le variabili di sessione, ma dice che non esistono

pagina login
Codice PHP:
if($action=="login"){
    
$query="SELECT \"user\", categoria, \"IDarea_riservata\", passw, stato FROM area_riservata WHERE \"user\" = '$_POST[user]'";
    
$result pg_query($conn,$query);
    
$row pg_fetch_assoc($result);
    if(
$row['passw'] == $_POST['password']){ 
        
session_start();
        
$_SESSION['nome'] = $_POST['user'];
        
$_SESSION['allow_site'] = "yes";
        
$_SESSION['IDarea_riservata'] = $row['IDarea_riservata'];
        
$_SESSION['stato'] = $row['stato'];
        
$_SESSION['categoria'] = $row['categoria'];
        
session_write_close();
        
header ("Location:index.php");
    } else {
    
$errore "password";
    }

pagina index.php
Codice PHP:
$ID $_SESSION['IDarea_riservata']; 
dove sbaglio?