Refactor contact controller and views for improved functionality and user experience
This commit is contained in:
parent
600e7bce82
commit
986356d5ba
5 changed files with 77 additions and 91 deletions
|
|
@ -1,8 +1,5 @@
|
|||
<?php
|
||||
|
||||
/**
|
||||
* Switch to the appropriate controller according to HTTP method
|
||||
*/
|
||||
function contact_ctrl() {
|
||||
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
|
||||
contact_write_ctrl();
|
||||
|
|
@ -11,42 +8,35 @@ function contact_ctrl() {
|
|||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Form display
|
||||
*/
|
||||
function contact_form_ctrl() {
|
||||
// Print form
|
||||
require('views/contact_form_view.php');
|
||||
require('views/contact_views.php');
|
||||
}
|
||||
|
||||
/**
|
||||
* Form processing
|
||||
*/
|
||||
function contact_write_ctrl() {
|
||||
// On récupère les données du formulaire
|
||||
$nom = $_POST['nom'];
|
||||
$nom = $_POST['nom'];
|
||||
$prenom = $_POST['prenom'];
|
||||
$dep = $_POST['dep'];
|
||||
$spe = $_POST['spe'];
|
||||
$tel = $_POST['tel'];
|
||||
$date = $_POST['ladate_lheure'];
|
||||
$dep = $_POST['dep'];
|
||||
$spe = $_POST['spe'];
|
||||
$tel = $_POST['tel'];
|
||||
$date = $_POST['ladate'];
|
||||
$heure = $_POST['lheure'];
|
||||
|
||||
// Combine date + heure en DateTime
|
||||
$date_heure = $date . ' ' . $heure . ':00';
|
||||
|
||||
|
||||
// On peut ajouter une petite validation simple
|
||||
if (empty($nom) || empty($prenom) || empty($tel)) {
|
||||
echo "Veuillez remplir tous les champs obligatoires !";
|
||||
$_SESSION['notification'] = 'Veuillez remplir tous les champs obligatoires.';
|
||||
require('views/contact_views.php');
|
||||
return;
|
||||
}
|
||||
|
||||
// Connexion à la base
|
||||
require('models/connection.php');
|
||||
$c = connection();
|
||||
|
||||
// Création de la personne
|
||||
require('models/contact_crud.php');
|
||||
create_personne($spe, $nom, $prenom, $dep,$tel, $date_heure, $c);
|
||||
|
||||
// Affichage de la page de confirmation
|
||||
require('views/welcome_view.php');
|
||||
create_sauveteur($c, $nom, $prenom, $dep, $spe, $date_heure, $tel);
|
||||
|
||||
$_SESSION['notification'] = 'Sauveteur ajouté avec succès.';
|
||||
header('Location: index.php?route=ajout_personnes');
|
||||
exit;
|
||||
}
|
||||
|
|
@ -65,6 +65,11 @@
|
|||
modif_utilisateurs_write_ctrl();
|
||||
break;
|
||||
|
||||
case 'ajout_personnes':
|
||||
require('controllers/contact_crtl.php');
|
||||
contact_ctrl();
|
||||
break;
|
||||
|
||||
case 'operations':
|
||||
require('controllers/operation_ctrl.php');
|
||||
operations_form_ctrl();
|
||||
|
|
|
|||
|
|
@ -1,23 +1,15 @@
|
|||
<?php
|
||||
|
||||
function create_sauveteur(PDO $connex, $nom, $prenom, $dep, $spe, $date, $heure, $role, $tel)
|
||||
{
|
||||
$req = "INSERT INTO Sauveteur
|
||||
(nom, prenom, dep, spe, ladate, lheure, role, tel)
|
||||
VALUES
|
||||
(:nom, :prenom, :dep, :spe, :date, :heure, :role, :tel)";
|
||||
|
||||
$prep = $connex->prepare($req);
|
||||
function create_sauveteur(PDO $c, string $nom, string $prenom, string $dep, string $spe, string $date_heure, string $tel): void {
|
||||
$req = "INSERT INTO Sauveteur (nom, prenom, departement, specialite, DateHeureEngagement, NumTel)
|
||||
VALUES (:nom, :prenom, :dep, :spe, :date_heure, :tel)";
|
||||
|
||||
$prep = $c->prepare($req);
|
||||
$prep->bindValue(':nom', $nom);
|
||||
$prep->bindValue(':prenom', $prenom);
|
||||
$prep->bindValue(':dep', $dep);
|
||||
$prep->bindValue(':spe', $spe);
|
||||
$prep->bindValue(':date_heure', $date_heure);
|
||||
$prep->bindValue(':tel', $tel);
|
||||
$prep->bindValue(':date', $date);
|
||||
|
||||
|
||||
$prep->execute();
|
||||
}
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -1,50 +1,50 @@
|
|||
<?php require('header.php')?>
|
||||
<?php require('views/header.php'); ?>
|
||||
|
||||
<h2>Ajouts de personnes </h2>
|
||||
<h2>Ajout de personnes</h2>
|
||||
|
||||
<form action="traite_formulaire.php" method="post">
|
||||
<p>Nom : <input type="text" name="nom" /></p>
|
||||
<p>Prénom : <input type="text" name="prenom" /></p>
|
||||
|
||||
<p>Département : <input type="text" name="dep" /></p>
|
||||
<label for="spe">Spécialité :</label>
|
||||
<select type="number" min="1" placeholder="spécialité" name="spe" >
|
||||
<option value="1" selected="true">Evacuation </option>
|
||||
<option value="2">ASV (assistance victime)</option>
|
||||
<option value="3">Transmission</option>
|
||||
<option value="4">Conseiller technique(chef)</option>
|
||||
<option value="5">Gestion</option>
|
||||
<option value="6">Désobstruction</option>
|
||||
<option value="7">Médical</option>
|
||||
<option value="8">Ventilation</option>
|
||||
<option value="9">Pas de spécialitées</option>
|
||||
</select>
|
||||
<form action="index.php?route=ajout_personnes" method="post">
|
||||
<p>
|
||||
<label>Nom :</label>
|
||||
<input type="text" name="nom" required>
|
||||
</p>
|
||||
<p>
|
||||
<label for="date">Date d'engagement sur l'opération de secours :</label>
|
||||
<input type="date" name="ladate" /></p>
|
||||
</p>
|
||||
<p>
|
||||
<label for="heure">Heure d'engagement sur l'opération de secours :</label>
|
||||
<input type="time" name="lheure"/>
|
||||
</p>
|
||||
<p>
|
||||
<label for="roles">Rôle :</label>
|
||||
<select type="number" min="1" placeholder="Rôle" name="role">
|
||||
<option value="1" selected="true">Gestionnaire </option>
|
||||
<option value="2">Lecteur </option>
|
||||
<option value="3">Admin</option>
|
||||
</select>
|
||||
</p>
|
||||
<p>
|
||||
<label for="tel">Numéro de téléphone :</label>
|
||||
<input type="tel" id="tel" name="tel" placeholder="Numéro de téléphone" required>
|
||||
</p>
|
||||
<p>
|
||||
<label>Prénom :</label>
|
||||
<input type="text" name="prenom" required>
|
||||
</p>
|
||||
<p>
|
||||
<label>Département :</label>
|
||||
<input type="text" name="dep" required>
|
||||
</p>
|
||||
<p>
|
||||
<label for="spe">Spécialité :</label>
|
||||
<select name="spe" id="spe">
|
||||
<option value="1">Évacuation</option>
|
||||
<option value="2">ASV (assistance victime)</option>
|
||||
<option value="3">Transmission</option>
|
||||
<option value="4">Conseiller technique (chef)</option>
|
||||
<option value="5">Gestion</option>
|
||||
<option value="6">Désobstruction</option>
|
||||
<option value="7">Médical</option>
|
||||
<option value="8">Ventilation</option>
|
||||
<option value="9">Pas de spécialité</option>
|
||||
</select>
|
||||
</p>
|
||||
<p>
|
||||
<label for="date">Date d'engagement :</label>
|
||||
<input type="date" id="date" name="ladate" required>
|
||||
</p>
|
||||
<p>
|
||||
<label for="heure">Heure d'engagement :</label>
|
||||
<input type="time" id="heure" name="lheure" required>
|
||||
</p>
|
||||
<p>
|
||||
<label for="tel">Numéro de téléphone :</label>
|
||||
<input type="tel" id="tel" name="tel" required>
|
||||
</p>
|
||||
<p>
|
||||
<input type="submit" value="Valider">
|
||||
<input type="reset" value="Annuler">
|
||||
</p>
|
||||
</form>
|
||||
|
||||
<input type="submit" value="Valider" />
|
||||
<input type="reset" value="Annuler" />
|
||||
</form>
|
||||
|
||||
|
||||
<?php
|
||||
require('footer.php');
|
||||
<?php require('views/footer.php'); ?>
|
||||
|
|
|
|||
|
|
@ -1,9 +1,8 @@
|
|||
<?php require('views/header.php'); ?>
|
||||
|
||||
<nav style="margin-bottom: 20px;">
|
||||
<a href="index.php?route=operations" style="text-decoration: underline; font-weight: bold; margin-right: 15px;">Opérations</a>
|
||||
<a href="index.php?route=ajout_personnes" style="margin-right: 15px;">Ajout personnes</a>
|
||||
<a href="index.php?route=planning">Planning</a>
|
||||
<nav class="sub-nav">
|
||||
<a href="index.php?route=operations">Opérations</a>
|
||||
<a href="index.php?route=ajout_personnes">Ajout personnes</a>
|
||||
</nav>
|
||||
|
||||
<h2>Création d'une opération</h2>
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue