INTERNET EXPLORER? Ti consiglio di navigare questo sito con Mozilla Firefox oppure con Google Chrome.

Autenticazione HTTP: un semplice sistema di login in Php

Autore: Max Bossi | Tell a Friend

Corso PHP
Impara a creare siti dinamici professionali con PHP!

Corso MySQL
Impara a gestire il famoso database gratuito!

Corso Linux
Impara a gestire il famoso sistema operativo open source!

Concesso gentilmente da MrWebmaster.it - E' vietata la pubblicazione senza espresso consenso del proprietario

E' possibile costruire con poche righe di codice PHP un valido sistema di autenticazione. Ecco cosa faremo: sfruttando la funzione header() invieremo un messaggio di "Authentication Required" al browser dell'utente, provocando quindi l'apertura di una finestra di Login contenente una richiesta di Username e Password. Una volta compilati i campi della finestra di login i dati inseriti verranno recuperati in qualità di variabili predefinite dell'array

$_SERVER: PHP_AUTH_USER
e
PHP_AUTH_PASS
A questo punto non ci resta che verificare se le variabili in questione corrispondono o meno a username e password da noi specificati. Vediamo il codice:
<?
    #Specifichiamo username e password
    $user = "demo";
    $pass = "demo";

    #Se la variabile PHP_AUTH_USER non è settata...
    #Chiediamo al browser dell'utente di aprire la finestra di login
    if (!isset($_SERVER['PHP_AUTH_USER']))
    {
        header("WWW-Authenticate: Basic realm="Effettua il Login!"");
        Header("HTTP/1.0 401 Unauthorized");
        exit;
    }
    #Verifichiamo se il Login è corretto...
    else if (($_SERVER['PHP_AUTH_USER'] == $user) && ($_SERVER['PHP_AUTH_PW'] == $pass))
    {
        echo "Complimenti! Ti sei loggato con successo...";
    }
    #Se il Login non è corretto...
    else
    {
        echo "Errore!";
    }
?>
Attenzione: i meccanismi di Autenticazione HTTP sono disponibili in Php solo quando questo viene usato come un modulo di Apache.

IN EVIDENZA
HOT LINKS