Registrazione degli utenti | Aulab

GUIDE PER ASPIRANTI PROGRAMMATORI

Registrazione degli utenti

La registrazione degli utenti è il primo passo per abilitare l’accesso protetto all’applicazione. Nel nostro progetto, questa funzionalità è gestita dal file register.php, che presenta un form all’utente e, una volta inviati i dati, li valida e li salva nel database.   Form di registrazione utente. Il form HTML è semplice e chiaro, progettato per…

Lezione 15 / 25
Enza Neri
Immagine di copertina

Vuoi avviare una nuova carriera o fare un upgrade?

Trova il corso Digital & Tech più adatto a te nel nostro catalogo!

La registrazione degli utenti è il primo passo per abilitare l’accesso protetto all’applicazione. Nel nostro progetto, questa funzionalità è gestita dal file register.php, che presenta un form all’utente e, una volta inviati i dati, li valida e li salva nel database.

Form di registrazione utente.

Il form HTML è semplice e chiaro, progettato per raccogliere username e password. Ecco un esempio di struttura che troverai nel file:

<h1>Registrazione</h1>
<form method="post">
    <label for="username">Username:</label>
    <input type="text" id="username" name="username" required><br>

    <label for="password">Password:</label>
    <input type="password" id="password" name="password" required><br>

    <button type="submit">Registrati</button>
</form>

Il form utilizza l’attributo required per garantire che i campi non vengano lasciati vuoti, migliorando l’esperienza utente e riducendo gli errori di inserimento.

Validazione dei dati (PHP + lato client con JS).

Una volta inviato il form, il file register.php utilizza il linguaggio PHP per validare i dati sul server. Viene controllato:

  • Che i campi non siano vuoti (ulteriore verifica rispetto a quella del browser)
  • Che l’username non sia già presente nel database
  • Che la password venga convertita in hash prima del salvataggio

Esempio di controllo e inserimento nel file register.php:

if ($_SERVER["REQUEST_METHOD"] == "POST") {
    $username = $_POST["username"];
    $password = password_hash($_POST["password"], PASSWORD_DEFAULT);

    require 'db.php';

    $stmt = $pdo->prepare("SELECT * FROM utenti WHERE username = ?");
    $stmt->execute([$username]);

    if ($stmt->rowCount() > 0) {
        echo "Username già registrato.";
    } else {
        $stmt = $pdo->prepare("INSERT INTO utenti (username, password) VALUES (?, ?)");
        $stmt->execute([$username, $password]);
        echo "Registrazione completata con successo.";
    }
}

Questa logica protegge il sistema da duplicazioni di username e garantisce la sicurezza delle credenziali grazie all’uso della funzione password_hash, che cripta la password prima di salvarla nel database.

Sul lato client (vale a dire considerando ciò che avviene sul dispositivo dell’utente, ovvero nel browser), il form HTML può essere arricchito con l’utilizzo del linguaggio JavaScript per fornire feedback in tempo reale, ad esempio per mostrare se le password rispettano determinati criteri (lunghezza minima, presenza di numeri o simboli). Tuttavia, nel progetto fornito nel nostro tutorial php, tale validazione lato client non è presente: può essere aggiunta in seguito come miglioramento, per permetterti di metterti alla prova in autonomia.

Salvataggio dell’utente nel database.

Una volta superati tutti i controlli, i dati dell’utente vengono salvati nella tabella utenti del database biblioteca. Questa tabella è stata definita nel file db.sql e include i campi id, username, password e ruolo. Per default, ogni nuovo utente ha ruolo “utente”, ma è possibile estendere questa logica per distinguere anche utenti amministratori.

Grazie a questa struttura, il sistema di registrazione è sicuro, funzionante e pronto per essere utilizzato da qualsiasi visitatore dell’applicazione.

Sei indeciso sul percorso? 💭

Parliamone! Scrivici su Whatsapp e risponderemo a tutte le tue domande per capire quale dei nostri corsi è il più adatto alle tue esigenze.

Oppure chiamaci al 800 128 626