27-05-2009, 02:32 PM
Bah c'est un peu comme tu veux.
Personnellement je gère les messages d'erreur au cas par cas. Mais donc oui, j'ai un tableau $erreur que je remplis en fonction des erreurs possibles. Donc si les conditions sont remplies pour qu'il y aie une erreur, j'instancie $erreur['quelquechose'].
Ce qui me permet très facilement de vérifier si il y a eu une erreur. Si je dois exécuter le script, il me suffit de faire count($erreur) == 0.
Après pour l'affichage, j'ai une fonction affiche_erreur qui me permet d'afficher le message de l'erreur qui est passé en paramètre (et qui ne l'affiche pas si la valeur passée en paramètre est vide).
Donc en gros et par exemple, si $x ne peut pas être plus grand que 10:
Personnellement je gère les messages d'erreur au cas par cas. Mais donc oui, j'ai un tableau $erreur que je remplis en fonction des erreurs possibles. Donc si les conditions sont remplies pour qu'il y aie une erreur, j'instancie $erreur['quelquechose'].
Ce qui me permet très facilement de vérifier si il y a eu une erreur. Si je dois exécuter le script, il me suffit de faire count($erreur) == 0.
Après pour l'affichage, j'ai une fonction affiche_erreur qui me permet d'afficher le message de l'erreur qui est passé en paramètre (et qui ne l'affiche pas si la valeur passée en paramètre est vide).
Donc en gros et par exemple, si $x ne peut pas être plus grand que 10:
Code PHP :
<?php
if($x > 10) {
$erreur['x'] = 'Votre x est trop grand. Veuillez désigner un x de valeur maximale 10.';
}
if(count($erreur) == 0) {
// Ici j'exécute le script vu qu'il n'y a eu aucune erreur
}
echo affiche_erreur($erreur['x']); // N'affichera rien si pas d'erreur
// Ici mon formulaire
?>
Ca permet aussi d'afficher plusieurs erreurs en même temps, et d'ignorer les erreurs qui n'ont pas eu lieu (puisque $erreur['x'] serait vide).