Corsi on-line

Un sistema d'iscrizione con conferma e password reminder

  • CommentiScrivi un commento
  • ForumDiscuti sul forum
  • Prev
  • NextUn sistema d'iscrizione con conferma e password reminder
    Pagina 2 di 4

1. Database e file di configurazione

In molti siti Web, si pensi per esempio alle directory di link, alle chat o ai forum di discussione, per poter usufruire di determinati servizi è necessario che gli utenti si iscrivano utilizzando la propria mail ed eventualmente scegliendo anche una userID e una password per l'autenticazione.

Le passsword si dimenticano facilmente, quindi è bene mettere a disposizione dei visitatori anche la possibilità di recuperare la propria parola chiave e riceverla nella casella di posta elettronica segnalata in iscrizione.

L'articolo continua dopo la pubblicità

In questo breve articolo mostreremo alcuni dei passaggi più comuni per questo tipo di servizi:

  1. L'iscrizione
  2. La conferma dell'iscrizione
  3. Il modulo "password reminder"
In pratica l'utente avrà a disposizione un modulo per l'iscrizione al sito Web; per iscriversi dovrà comunicare una userID (nel nostro caso il suo indirizzo di posta) e una password; i dati utilizzati verranno inviati all'indirizzo email segnalato e dovranno essere inseriti in un apposito modulo di conferma con il compito di attivare l'account dell'utente.
Nel caso in cui l'utente abbia dimenticato la password, avrà a disposizione un modulo in cui inserire il proprio indirizzo per riceverla via posta elettornica.

Il database che utilizzaremo, potremmo chiamarlo "iscritti", avrà una struttura molto semplice e conterrà un'unica tabella a cui verranno associati 4 campi:

  1. Id: identificativo univoco, numerico intero e autoincermentale per ogni record;
  2. email: campo di testo per le email/userID;
  3. password: campo di testo per le password;
  4. attivo, campo ENUM che prevede due soli valori possibili: 0 (utente non attivo), 1 (utente attivo).
Di sotto riporteremo la semplice istruzione SQL per la creazione della tabella "iscrizioni":
CREATE TABLE `iscrizioni` (
  `id` int(5) NOT NULL auto_increment,
  `email` varchar(50) NOT NULL default '',
  `password` varchar(10) NOT NULL default '',
  `attivo` enum('0','1') NOT NULL default '0',
  PRIMARY KEY  (`id`)
);
A questo punto la nostra applicazione potrà essere strutturata in questo modo:
  1. config.php: conterrà la classe di connessione al DBMS e di selezione del database con i relativi parametri;
  2. form_iscrizione.php: il file che conterrà il form per l'iscrizione, il codice per l'insermento dei dati in tabella e quello per l'invio della mail con richiesta di conferma;
  3. conferma.php: conterrà il modulo per la conferma dell'iscrizione e il codice necessario per l'attivazione dell'account;
  4. iscritti.php: pagina riservata a cui possono accedere gli utenti una volta che hanno attivato il proprio account attraverso l'apposito modulo;
  5. ricorda_password.php: conterrà il modulo per la richiesta delle password dimenticate.
Il primo codice che mostreremo sarà quello relativo al file di configurazione:
<?php
// classe di connessione al DBMS e selezione del database
class MySQL
{ 
  function MySQL() 
  { 
    // parametri di connessione
    $this->host_name = "localhost";
    $this->user_name = "username";
    $this->password = "password";
    $this->data_name = "iscritti";
    $this->link = @mysql_connect($this->host_name, $this->user_name, $this->password) or die (mysql_error());
    @mysql_select_db($this->data_name) or die (mysql_error()); 
  } 
} 
// istanza della classe
$data = new MySQL();

// mail dell'amministratore
$admin_email = "info@miosito.it";
?>
In esso è contenuta una classe che si occupa della connessione a MySQL e della selezione del database; nella stessa pagina è contenuto il codice necessario all'istanza della classe nonchè l'indirizzo email dell'amministratore che sarà il mittente di tutti i messaggi di posta inviati dal sistema.

Corsi
  • Corso Linux
    Corso Linux
    Guida completa al sistema open-source. A partire da 39 €
  • Corso MySQL
    Corso MySQL
    Gestione del database open-source. A partire da 39 €
  • Corso PHP
    Corso PHP
    Creare siti web dinamici avanzati con PHP e MySQL. A partire da 39 €
Vedi anche...
Guide