From f298c0c7d6968a0cd52824408f464e9fe64d2d81 Mon Sep 17 00:00:00 2001 From: ycharbi Date: Sun, 16 Jan 2022 16:48:49 +0100 Subject: [PATCH] =?UTF-8?q?Utilisation=20de=20la=20fonction=20retourneMess?= =?UTF-8?q?age=20pour=20la=20page=20formulaire=5Faccueil.php=20et=20ajout?= =?UTF-8?q?=20de=20v=C3=A9rifications=20avant=20affichage=20des=20messages?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pages/visiteurs/echec_auth.php | 2 +- pages/visiteurs/formulaire_accueil.php | 41 ++++----- services/fonctions/messages/messages.php | 92 +++++++++++-------- services/fonctions/sessions/privileges.php | 2 +- services/gestion/domaines.php | 2 +- services/gestion/listes_noires.php | 2 +- .../utilisateurs/changeUtilisateur.php | 2 +- .../traitements/utilisateurs/deconnexion.php | 2 +- 8 files changed, 81 insertions(+), 64 deletions(-) diff --git a/pages/visiteurs/echec_auth.php b/pages/visiteurs/echec_auth.php index e565fd7..d8d1dae 100644 --- a/pages/visiteurs/echec_auth.php +++ b/pages/visiteurs/echec_auth.php @@ -6,7 +6,7 @@ * Elle ajoute à cette redirection un temps d'attente pour limiter la fréquence des tentatives ainsi qu'une variable dans l'URL permettant l'affichage d'un message d'explication sur la redirection. */ -header ("Refresh: 5;URL=/pages/visiteurs/formulaire_accueil.php?erreur=1"); +header ("Refresh: 5;URL=/pages/visiteurs/formulaire_accueil.php?erreur=17"); ?> diff --git a/pages/visiteurs/formulaire_accueil.php b/pages/visiteurs/formulaire_accueil.php index 6eadcca..94b3a6b 100644 --- a/pages/visiteurs/formulaire_accueil.php +++ b/pages/visiteurs/formulaire_accueil.php @@ -1,7 +1,14 @@ - +
@@ -35,23 +42,15 @@ Identifiant ou mot de passe incorrecte.

"; - break; - case 2: - echo "

Vous n'avez pas les privilèges nécessaires.

"; - break; - } - } - elseif (isset($_GET['succes']) && !empty($_GET['succes'])){ - switch ($_GET['succes']) { - case 1: - echo "

Vous avez bien été déconnecté.

"; - break; - } - } + /** + * Affichage d'une bannière d'état sur l'action précedemment effectuée. + */ + if (isset($_GET['erreur']) && !empty($_GET['erreur'])) { + retourneMessage('erreurs',$_GET['erreur']); + } + elseif (isset($_GET['succes']) && !empty($_GET['succes'])) { + retourneMessage('succes',$_GET['succes']); + } ?> diff --git a/services/fonctions/messages/messages.php b/services/fonctions/messages/messages.php index 6d6e03b..06d81e7 100644 --- a/services/fonctions/messages/messages.php +++ b/services/fonctions/messages/messages.php @@ -4,43 +4,61 @@ * Fonction affichant les messages de retour des traitements site lorsqu'elle est interrogée. */ function retourneMessage($type_message,$num_message) { - $liste_messages = array ( - "succes" => array( - 1 => "

Succès : alias virtuel créé avec succès.

", - 2 => "

Succès : alias virtuel modifiés avec succès.

", - 3 => "

Succès : alias virtuel supprimé avec succès.

", - 4 => "

Succès : utilisateur changé en ".$_SESSION['pseudo_utilisateur']." avec succès.

", - 5 => "

Succès : domaine créé avec succès.

", - 6 => "

Succès : domaine modifiés avec succès.

", - 7 => "

Succès : domaine supprimé avec succès.

", - 8 => "

Succès : domaine défini par défaut avec succès.

", - 9 => "

Succès : l'entrée de liste noire destiataires a été créée avec succès.

", - 10 => "

Succès : l'état de l'entrée de liste noire destiataires a été modifié avec succès.

", - 11 => "

Succès : l'entrée de liste noire destinataires a été supprimée avec succès.

", - 12 => "

Succès : l'entrée de liste noire expéditeurs a été créée avec succès.

", - 13 => "

Succès : l'état de l'entrée de liste noire expéditeurs a été modifié avec succès.

", - 14 => "

Succès : l'entrée de liste noire expéditeurs a été supprimée avec succès.

"), - "erreurs" => array( - - 1 => "

Erreur : aucun alias virtuel supprimé.

", - 2 => "

Erreur : aucun alias virtuel créé car une donnée est erronée ou manquante.

", - 3 => "

Erreur : L'alias virtuel est déjà existant.

", - 4 => "

Erreur : Code d'erreur générique (HY000) signifiant probablement que la base SQLite n'est pas accessible en écriture. Il faut que la base et le répertoire bdd appartiennent à www-data.

", - 5 => "

Erreur : aucun domaine supprimé.

", - 6 => "

Erreur : aucun domaine créé car une donnée est erronée ou manquante.

", - 7 => "

Erreur : le domaine est déjà existant.

", - 8 => "

Erreur : le domaine par défaut n'a pas été modifié.

", - 9 => "

Erreur : l'entrée de liste noire destinataires n'a pas été ajouté car une donnée est erronée ou manquante.

", - 10 => "

Erreur : l'état de l'entrée de liste noire destinataires n'a pas été modifié.

", - 11 => "

Erreur : l'entrée de liste noire destinataires n'a pas été supprimée.

", - 12 => "

Erreur : l'entrée de liste noire destinataires n'a pas été ajouté car elle est déjà existante.

", - 13 => "

Erreur : l'entrée de liste noire expéditeurs n'a pas été ajouté car une donnée est erronée ou manquante.

", - 14 => "

Erreur : l'état de l'entrée de liste noire expéditeurs n'a pas été modifié.

", - 15 => "

Erreur : l'entrée de liste noire expéditeurs n'a pas été supprimée.

", - 16 => "

Erreur : l'entrée de liste noire expéditeurs n'a pas été ajouté car elle est déjà existante.

") - ); - - echo $liste_messages[$type_message][$num_message]; + if ($type_message=="succes" || $type_message=="erreurs") { + if (isset($_SESSION) && !empty($_SESSION['pseudo_utilisateur'])) { + $pseudo_utilisateur=$_SESSION['pseudo_utilisateur']; + } + else { + $pseudo_utilisateur="visiteur"; + } + $liste_messages = array ( + "succes" => array( + 1 => "

Succès : alias virtuel créé avec succès.

", + 2 => "

Succès : alias virtuel modifiés avec succès.

", + 3 => "

Succès : alias virtuel supprimé avec succès.

", + 4 => "

Succès : utilisateur changé en ".$pseudo_utilisateur." avec succès.

", + 5 => "

Succès : domaine créé avec succès.

", + 6 => "

Succès : domaine modifiés avec succès.

", + 7 => "

Succès : domaine supprimé avec succès.

", + 8 => "

Succès : domaine défini par défaut avec succès.

", + 9 => "

Succès : l'entrée de liste noire destiataires a été créée avec succès.

", + 10 => "

Succès : l'état de l'entrée de liste noire destiataires a été modifié avec succès.

", + 11 => "

Succès : l'entrée de liste noire destinataires a été supprimée avec succès.

", + 12 => "

Succès : l'entrée de liste noire expéditeurs a été créée avec succès.

", + 13 => "

Succès : l'état de l'entrée de liste noire expéditeurs a été modifié avec succès.

", + 14 => "

Succès : l'entrée de liste noire expéditeurs a été supprimée avec succès.

", + 15 => "

Succès : Vous avez bien été déconnecté.

"), + "erreurs" => array( + 1 => "

Erreur : aucun alias virtuel supprimé.

", + 2 => "

Erreur : aucun alias virtuel créé car une donnée est erronée ou manquante.

", + 3 => "

Erreur : L'alias virtuel est déjà existant.

", + 4 => "

Erreur : Code d'erreur générique (HY000) signifiant probablement que la base SQLite n'est pas accessible en écriture. Il faut que la base et le répertoire bdd appartiennent à www-data.

", + 5 => "

Erreur : aucun domaine supprimé.

", + 6 => "

Erreur : aucun domaine créé car une donnée est erronée ou manquante.

", + 7 => "

Erreur : le domaine est déjà existant.

", + 8 => "

Erreur : le domaine par défaut n'a pas été modifié.

", + 9 => "

Erreur : l'entrée de liste noire destinataires n'a pas été ajouté car une donnée est erronée ou manquante.

", + 10 => "

Erreur : l'état de l'entrée de liste noire destinataires n'a pas été modifié.

", + 11 => "

Erreur : l'entrée de liste noire destinataires n'a pas été supprimée.

", + 12 => "

Erreur : l'entrée de liste noire destinataires n'a pas été ajouté car elle est déjà existante.

", + 13 => "

Erreur : l'entrée de liste noire expéditeurs n'a pas été ajouté car une donnée est erronée ou manquante.

", + 14 => "

Erreur : l'état de l'entrée de liste noire expéditeurs n'a pas été modifié.

", + 15 => "

Erreur : l'entrée de liste noire expéditeurs n'a pas été supprimée.

", + 16 => "

Erreur : l'entrée de liste noire expéditeurs n'a pas été ajouté car elle est déjà existante.

", + 17 => "

Erreur : Identifiant ou mot de passe incorrecte.

", + 18 => "

Erreur : Vous n'avez pas les privilèges nécessaires.

", + 19 => "

Erreur : Erreur non gérée.

") + ); + + $num_message=htmlspecialchars($num_message); + + if (isset($liste_messages[$type_message][$num_message])) { + echo $liste_messages[$type_message][$num_message]; + } + else { + echo $liste_messages['erreurs']['19']; + } + } } ?> \ No newline at end of file diff --git a/services/fonctions/sessions/privileges.php b/services/fonctions/sessions/privileges.php index 457c565..f93d6f1 100644 --- a/services/fonctions/sessions/privileges.php +++ b/services/fonctions/sessions/privileges.php @@ -18,7 +18,7 @@ function testPrivileges(){ return "utilisateur"; } else { - header("Location: /pages/visiteurs/formulaire_accueil.php?erreur=2"); + header("Location: /pages/visiteurs/formulaire_accueil.php?erreur=18"); die(); } } diff --git a/services/gestion/domaines.php b/services/gestion/domaines.php index 4b6ea06..bda3a0a 100644 --- a/services/gestion/domaines.php +++ b/services/gestion/domaines.php @@ -7,7 +7,7 @@ require_once ($_SERVER["DOCUMENT_ROOT"]."/services/fonctions/sessions/privileges.php"); if (testPrivileges()!="administrateur") { - header("Location: /pages/visiteurs/formulaire_accueil.php?erreur=2"); + header("Location: /pages/visiteurs/formulaire_accueil.php?erreur=18"); die(); } diff --git a/services/gestion/listes_noires.php b/services/gestion/listes_noires.php index e3ea7fc..8c596be 100644 --- a/services/gestion/listes_noires.php +++ b/services/gestion/listes_noires.php @@ -7,7 +7,7 @@ require_once ($_SERVER["DOCUMENT_ROOT"]."/services/fonctions/sessions/privileges.php"); if (testPrivileges()!="administrateur") { - header("Location: /pages/visiteurs/formulaire_accueil.php?erreur=2"); + header("Location: /pages/visiteurs/formulaire_accueil.php?erreur=18"); die(); } diff --git a/services/traitements/utilisateurs/changeUtilisateur.php b/services/traitements/utilisateurs/changeUtilisateur.php index dbd1c5e..239af60 100644 --- a/services/traitements/utilisateurs/changeUtilisateur.php +++ b/services/traitements/utilisateurs/changeUtilisateur.php @@ -15,7 +15,7 @@ if (testPrivileges()=="administrateur" && isset($_POST['choix_utilisateur']) && die(); } else { - header ("Location: /pages/visiteurs/formulaire_accueil.php?erreur=2"); + header ("Location: /pages/visiteurs/formulaire_accueil.php?erreur=18"); die(); } diff --git a/services/traitements/utilisateurs/deconnexion.php b/services/traitements/utilisateurs/deconnexion.php index a3060b4..bba5b8b 100644 --- a/services/traitements/utilisateurs/deconnexion.php +++ b/services/traitements/utilisateurs/deconnexion.php @@ -11,6 +11,6 @@ // Destruction de la session session_destroy (); // Redirection de l'utilisateur vers la page d'authentifiaction - header('location: /pages/visiteurs/formulaire_accueil.php?succes=1'); + header('location: /pages/visiteurs/formulaire_accueil.php?succes=15'); ?> \ No newline at end of file