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;
}