Développer un formulaire d'enregistrement en MVC
Nous allons maintenant utiliser l'architecture MVC pour développer une fonctionalité simple d'enregistrement d'un utilisateur dans une base de donnée d'après un formulaire.
Vue
Commençons par créer notre vue, le formulaire, dans une fichier register.tpl dans le dossier view :
<form method="post" action="index.php?controller=RegisterController&action=Register">
<label for="lastname">Nom :
<input type="text" name="lastname" required/>
</label>
<br>
<label for="firstname">Prénom :
<input type="text" name="firstname" required/>
</label>
<br>
<label for="number">Numéro :
<input type="text" name="number" required/>
</label>
<br>
<label for="role">Rôle :
<input type="text" name="role" required/>
</label>
<br>
<label for="email">Email :
<input type="text" name="email" required/>
</label>
<button type="submit">Inscription</button>
</form>
Modèle
On va maintenant créer un service de données : registerService.php dans le dossier model dans lequel on importe le script de connexion à la base de donnée pour accèder à l'objet PDO via notre fonction connect() :
function RegisterDB($firstname, $lastname, $number, $role, $email)
{
require("connectDb.php");
$db = connect();
$request = $db->prepare("INSERT INTO utilisateur(nom,prenom,num,role,email) value (:firstname, :lastname, :number,:role, :email)");
$request->bindParam(":firstname", $firstname);
$request->bindParam(":lastname", $lastname);
$request->bindParam(":number", $number);
$request->bindParam(":role", $role);
$request->bindParam(":email", $email);
$request->execute();
return $request;
}