Sto creando un'applicazione funzionante in locale. La pagina index comprende un form di login, se l'utente ha inserito la userid e la password giuste viene inoltrato ad una pagina protetta, se no compare un messaggio di errore.

Copiando lo stesso codice da un mio sito che funziona in remoto, faccio partire l'applicazione in locale. Risultato? Nonostante legga che i dati siano corretti, non mi fa accedere alle pagine protette.

Ho allora impostato:

safe mode=On
session.use.trans_id=1

Adesso mi funziona, ma mi compare il PHPSESSID nella barra degli url, cosa che non può essere concepita per l'applicazione che sto facendo.

Provando a cambiare il session.use.trans_id impostandolo a 0, tutto non mi funziona. Premetto che ho i cookie abilitati, sia sul browser sia all'utilizzo nel php.ini.

Che devo fare?

Vi posto il codice che ha ogni pagina protetta:


Codice PHP:
<?php
@session_start();
// controllo autorizzazione utente

if (!session_is_registered('autorized')) {
  echo 
"<h1>Area riservata, accesso non consentito</h1>";
  die;
}
?>
Questo è il codice che mi riceve i dati dal form di login e reindirizza:

Codice PHP:
<?php

  
include("PHP/connessione.php");
        
  
$i=0;
  
$user=$_POST['userid'];
  
$pass=$_POST['passwd'];
  
                
$query   "SELECT * FROM utenti WHERE (username LIKE '$user') AND (user_password LIKE '$pass')";
        
                    
$risultato mysql_query($query) or die (mysql_error());
                    
                    
$check mysql_num_rows($risultato);
                                                
                    if(
$check>0){
    @
session_register('autorized');
    
$autorized 1;
    echo 
"Sei autorizzato ad entrare [url='home.php']Accedi[/url]";
          } 
          else     
      
      {
     echo 
"NON sei autorizzato ad entrare [url='index.php']Indietro[/url]"
  }


?>
Cosa sbaglio? Datemi qualche suggerimento perchè non so proprio che fare... Vi ringrazio anticipatamente...