standardLib – PHP framework
passwordReset
Dipendenze: addUser, Security, standardTools, Mailer
Descrizione
Questo modello permette di implementare un sistema per la funzione “password dimenticata”. E’ necessario unicamente un form che richieda l’email dello smemorato utente.
Lista dei parametri
| Parametro | Descrizione | Default |
|---|---|---|
| userTable | Il nome della tabella utenti del databse | Valore di DEFAULT_USERS_TABLE in config.php |
| usernameField | Il nome utilizzato per il campo username della tabella utenti | Valore di DEFAULT_USERNAME_FIELD in config.php |
| passwordField | Il nome utilizzato per il campo password della tabella utenti | Valore di DEFAULT_PASSWORD_FIELD in config.php |
| keyField | Il nome utilizzato per il campo codice di controllo della tabella utenti | Valore di DEFAULT_KEY_FIELD in config.php |
| emailField | Il nome utilizzato per il campo email della tabella utenti | Valore di DEFAULT_EMAIL_FIELD in config.php |
| primaryField | Il nome utilizzato per il campo chiave primaria della tabella utenti | Valore di DEFAULT_USER_PRIMARY_KEY_FIELD in config.php |
| cryptMethod | Il metodo di cifratura della password. Vi sono tre valori possibili: md5, sha1 o 0 per non applicare cifrature (deprecato) | Valore di DEFAULT_CRYPT_METHOD in config.php |
| emailName | Il nome del campo del form nel quale viene richiesto l’email | Valore di DEFAULT_EMAIL_FORM_NAME in config.php |
Lista dei metodi e delle proprietà
| Proprietà – Metodo | Descrizione | Return |
|---|---|---|
| _resetErrors() | Analizza la presenza dei seguenti errori:
|
TRUE: Se viene constatato uno di questi errori FALSE: Se non vi sono errori |
| resetErrorReport | Se _resetErrors() ritorna TRUE, contiene la descrizione dell’errore che si è verificato | |
| setNewPassword() | Assegna una nuova password casuale, aggiorna il database ed invia un email con i nuovi dati |
Esempio minimo
Come detto è necessario disporre di un form che richieda l’email dell’utente smemorato.
Per ricevere una nuova password, inserisci la tua email
Mentre il file che riceve il dato del form passreset.php sarà semplicemente
include 'standardLib/engine.php';
if($model->_resetErrors())
{
echo $model->resetErrorReport;
}
else
{
$model->setNewPassword();
}
Come nel caso del modello addUser, è necessario verificare la presenza di eventuali errori!

