Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it
    Registrato dal
    Jan 2012
    Messaggi
    58

    HTTP Authentication - Problema sul Web Server

    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!!!

  2. #2
    Utente di HTML.it
    Registrato dal
    Jan 2012
    Messaggi
    58
    Ragazzi ma nessuno può aiutarmi? vi prego è molto importante sono inchiodato e non so proprio come procedere!!!!!

  3. #3
    Utente di HTML.it L'avatar di Gin7
    Registrato dal
    Feb 2011
    Messaggi
    92
    La butto li.... provato a fare 2 volte consecutive il login?
    Io ho lo stesso problema, nonostante mi sia loggato mi viene comunque richiesto user e password. Se li inserisco una seconda volta (quindi due volte consecutive) risulto loggato altrimenti niente. Trovi la mia discussione poco più sotto

  4. #4
    Utente di HTML.it
    Registrato dal
    Jan 2012
    Messaggi
    58
    ora provo e ti faccio subito sapere. Grazie comunque!

  5. #5
    Utente di HTML.it
    Registrato dal
    Jan 2012
    Messaggi
    58
    no, niente da fare, il problema persiste. C'è qualcuno così gentile da provare ad aiutarci? (metto il plurale visto che siamo in due ad avere un problema simile...) GRAZIEEE!!!

  6. #6
    Utente di HTML.it L'avatar di Gin7
    Registrato dal
    Feb 2011
    Messaggi
    92
    mi dispiace kekko12...ti lascio solo ho "risolto" oggi trovando il problema. Nel mio caso è un problema di jquery. Dubito che lo sia anche nel tuo
    buona fortuna comunque

  7. #7
    Utente di HTML.it
    Registrato dal
    Jan 2012
    Messaggi
    58
    ok, vediamo se riesco ad agevolare il compito di coloro che vorranno aiutarmi. Ho provato a caricare il seguente codice preso da php.net e accade la stessa cosa che accade con il mio codice:

    Codice PHP:
    if (!isset($_SERVER['PHP_AUTH_USER'])) {
        
    header('WWW-Authenticate: Basic realm="My Realm"');
        
    header('HTTP/1.0 401 Unauthorized');
        echo 
    'Text to send if user hits Cancel button';
        exit;
    } else {
        echo 
    "

    Hello 
    {$_SERVER['PHP_AUTH_USER']}.</p>";
        echo 
    "

    You entered 
    {$_SERVER['PHP_AUTH_PW']} as your password.</p>";

    Appare il finestra di dialogo che richiede nome utente e password, se clicco su "annulla" viene eseguito correttamente l'echo e visualizzato il messaggio, se invece provo a inserire qualsiasi nome utente e password, ricarica la pagina e riappare la finestra per l'inserimento del nome utente e della password.

    E' forse dovuto al fatto che il mio web server non permette di settare la variabile $_SERVER? Nel caso fosse così cosa dovrei fare per evitare questo inconveniente??

  8. #8
    Utente di HTML.it
    Registrato dal
    Jan 2012
    Messaggi
    58
    Originariamente inviato da Gin7
    mi dispiace kekko12...ti lascio solo ho "risolto" oggi trovando il problema. Nel mio caso è un problema di jquery. Dubito che lo sia anche nel tuo
    buona fortuna comunque
    Si, infatti lo credevo anche io. Ti ringrazio comunque per il supporto

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.