[PHP] Vérifier un champ avant de valider

Résolu/Fermé
moderno31 Messages postés 870 Date d'inscription mardi 23 juin 2009 Statut Membre Dernière intervention 8 août 2012 - 16 août 2009 à 13:19
moderno31 Messages postés 870 Date d'inscription mardi 23 juin 2009 Statut Membre Dernière intervention 8 août 2012 - 17 août 2009 à 21:49
Bonjour,
Un développement particulier m'amène à générer par boucle php "n" input de type "text" selon le souhait.
ex : Internaute tape 4, et dans la page suivante 4 input sont générés.

Comment vérifier de façon dynamique en javascript que les "n" inputs générés sont bien remplis ?


Merci à vous
A voir également:

6 réponses

jeangilles Messages postés 816 Date d'inscription samedi 21 juin 2008 Statut Membre Dernière intervention 17 juillet 2012 185
16 août 2009 à 14:41
Heu, peut être en récupérant la liste des champs input du formulaire en passant par un getElementsByTagName, puis en vérifiant chaque valeur du tableau ainsi récupéré
0
moderno31 Messages postés 870 Date d'inscription mardi 23 juin 2009 Statut Membre Dernière intervention 8 août 2012 92
16 août 2009 à 16:39
Je pense comprendre ce que tu veux dire.
Je fais déjà des recherches sur la base de ce que tu m'indiques (getElementsByTagName)
En PHP je me retrouve avec ça, tu ferais quoi toi ?

echo"<table boder = 0>";
for($j=1; $j <= $nb_part; $j++){ //Debut de FOR
echo("<tr>");
echo("<td><input disabled name='".$j."' value='".$j."' size='2'/></td>");
echo("<td><input type='text' name='membre_".$j."' id='membre_1' size='32'/></td>");
echo("</tr>");
}
echo"</table>";

Ensuite je fais un Insert en base via une boucle pour chaque valeur de $i.

J'aimerais trouver un moyen de bloquer tant que les "n" champs requis ne sont pas remplis.
Je continuer à chercher

Merci
0
Alain_42 Messages postés 5361 Date d'inscription dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 894
16 août 2009 à 22:14
<script type="text/javascript">
//on va donner dynamiquement a JS le nombre de champs dans la variable globale n
var n=<?php echo $nb_part; ?>;
//fonction verif
function verif_champs(){	
	for(i=1;i<=n;i++){
		//on atteint l'input par son id
		var obj=document.getElementById(i);
		if(obj.value=""){
			//si au moins un des cahmps est vide on quite la fonction en renvoyant false
			return false;
		}
	}
 return true;
}
</script>
<form name="form1" method="post" action="ton_script.php" onSubmit="return verif_champs();">
ainsi si on a un return false le formulaire ne part pas
<?php
echo"<table boder = 0>";
for($j=1; $j <= $nb_part; $j++){ //Debut de FOR
echo("<tr>");
echo("<td><input disabled name='".$j."' value='".$j."' size='2'/></td>");
echo("<td><input type='text' name='membre_".$j."' id='".$j."' size='32'/></td>");
echo("</tr>");
}
echo"</table>";
//attention mets bien ton id=$j comme ci dessus
?>
0
moderno31 Messages postés 870 Date d'inscription mardi 23 juin 2009 Statut Membre Dernière intervention 8 août 2012 92
16 août 2009 à 23:24
Hey bien, merci pour cette grande leçon.
J'apprends encore plus avec cet exemple. Je voyais bien un truc du genre mais comment l'organiser...
J'aurai certainement trouvé un bricolage. Super sympa vraiment pour ça..

A bientot :)
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Alain_42 Messages postés 5361 Date d'inscription dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 894
17 août 2009 à 09:53
ok, mais a la relecture je viens de me rendre compte d'une belle erreur dans mon script:

if(obj.value="")


if(obj.value=="")
0
moderno31 Messages postés 870 Date d'inscription mardi 23 juin 2009 Statut Membre Dernière intervention 8 août 2012 92
17 août 2009 à 21:49
ouoi oui j'avais corrigé.
Je te suis reconnaissant de m'avoir aidé.
J'avais d'autres interventions à faire en passant par .js. J'ai bien appris là

merci
0