salutations

je suis en train de concevoir une petite zone d'administration et il me sera nécessaire d'afficher a quelques endroit des messages selon les résultats et actions réalisées.

J'avais donc pensé stocker les messages sous la forme d'un tableau en leur donnant un numéro a chacun. le tout dans un fichier externe (ex: messages.php) et inclure ce derniers dans les pages le nécessitant.

Ne me laissant plus qu'a faire appel au numéro désiré selon le messages ou l'erreur qui devra etre affiché à l'utilisateur.

fichier : messages.php
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
 
<?php 
// Saisie du Formulaire
$msgtab[0] = " ";
$msgtab[1] = "- Vous devez saisir votre Nom !";
$msgtab[2] = "- Vous devez saisir un @mail valide !"; 
$msgtab[3] = "- Vous devez saisir correctement 2 fois votre @mail !";
.... etc
?>
exemple du fichier effectuant la vérification de saisie et devant afficher le OU les messages d'erreurs.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
 
// On effectue une boucle selon l'action réalisée
switch( $action )
{
     // Action : vérification saisie et génération licence
     case 'validlicence1':
     if ( !$_POST['nom'] || $_POST['email']!=$_POST['email2']) {
	if ( !$_POST['nom'] )
	{
	     $msg = "1";
	};
	if ( $_POST['email'] || $_POST['email2'])
             {
	     $msg .= "-2";
	};
     };
     header("Location: generator1.php?msg=$msg");
     exit();
     .....
Je recharge donc la page grace la fonction header, avec la variable msg faisant référence aux messages ou erreurs devant etre affiché. Mais c'est la que ca se corse pour moi.

J'ai écrit une petite fonction qui va donc séparer chaque numéro de message a afficher, faire une boucle afin de stocker ces messages et donc les retourner, mais ca ne semble pas fonctionner :p

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
function affiche_messages($a) {
	$tab = explode("-",$a);
	for($i=0;$i<sizeof($tab);$i++)
    { 
		$m = $tab[$i];
		$messages = $msgtab[$m]."<br /><br />";
    } 
	return $messages;
}
donc admettons que les messages 1 et 2 doivent s'afficher, la variable msg aura donc la valeur 1-2.

cependant, l'exécution de la fonction affiche_messages($msg); ne renvoit que les "<br />.
mais je nage, si quelqu'un peu m'aiguiller ou me donner un tit coup de main