Salve a tutti. Vi sottopongo questa situazione nella quale mi sono incagliato e dalla quale non riesco ad uscire. In pratica ho il seguente codice che sto sviluppando:

Codice PHP:
if (isset($_SERVER['PHP_AUTH_USER']) && isset($_SERVER['PHP_AUTH_PW']))
{
    
$mysqli=new mysqli('localhost','root','','lo_zodiaco');//connessione DB
    
    
if(!$mysqli)
    {
        die(
"Errore nella connessione del DB ".mysqli_error());
    }else{
        
//echo(("connessione avvenuta con successo!!!"));
    
}
    
    
$temp_username=$mysqli->real_escape_string($_SERVER['PHP_AUTH_USER']);
    
$temp_password=$mysqli->real_escape_string($_SERVER['PHP_AUTH_PW']);
    echo 
$temp_username.$temp_password;
    
    
$query="SELECT id_login FROM login WHERE username_login = '$temp_username' AND password_login = '$temp_password'";
    
$result=$mysqli->query($query);
    if(!
$result) die("Errore nella query al DB ".mysqli_error());
    elseif(
mysqli_num_rows($result))
    {
        
$row=$result->fetch_row();
        
$id_login=$row[0];
        echo (
"Accesso effettuato. Benvenuto! La tua ID è ".$id_login); 
    }else{
        die (
"Nome utente o password errati");
    }
}else{
    
header('HTTP/1.0 401 Unauthorized');
    
header('WWW-Authenticate: Basic realm="Area riservata"');
    
    die (
"Inserire nome utente e password");

e provandolo in locale devo dire che tutto sembra funzionare a meraviglia (all'inserimento del corretto nome utente e password tutto va e appare il messaggio di benvenuto seguito dall'ID del login.

Se però provo ad eseguire tale codice da remoto, accade che viene visualizzato il prompt dove vengono richieste nome utente e password, ma anche inserendo la corretta accoppiata nome utente/password (ma anche inserendo valori errati) la pagina si ricarica e si ripresenta di nuovo il prompt.

Se scelgo il tasto "annulla" allora appare il messaggio "Inserire nome utente e password".

Sapreste dirmi da cosa potrebbe dipendere???

Da quel poco che ho capito è come se non settasse correttamente i valori digitati dentro i campi nome utente e password nella var $_SERVER['PHP_AUTH_USER'] e $_SERVER['PHP_AUTH_PW']

Il web server è top host e tutto funziona regolarmente nelle altre pagine del sito.

GRAZIE!!!