IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Validation de formulaire et Javascript


Sujet :

Langage PHP

  1. #1
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2011
    Messages
    24
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Cher (Centre)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Conseil

    Informations forums :
    Inscription : Mars 2011
    Messages : 24
    Points : 15
    Points
    15
    Par défaut Validation de formulaire et Javascript
    Bonjour tout le monde !

    Voila, je commence a perdre patience, alors je sollicite votre aide

    J'ai programmé plusieurs formulaires et je souhaites utiliser du JS afin d'informer l'utilisateur s'il n'as pas rempli l'un des champs requis avant validation.

    Le problème est que j'arrive a programmer la fonction JS mais elle ne fonctionne que sur un seul formulaire et pas sur les deux....

    Voici mes formulaires :

    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
    20
    21
    22
    23
    24
    25
    26
     
     
            // Affichage du formulaire de création d'une catégorie
    	if(isset($_POST['Creer_Categorie'])) {
    		echo '<h2>Cr&eacute;er une catégorie</h2>';
    		echo'<FORM method="post" action="Parametres_Categories.php" onsubmit="return valider();" name= "CreerCat">';
    		echo'<label>Titre de la cat&eacute;gorie :</label><input type="text" id="titrecat" name="titrecat"><br/>';
    		echo'<input type="submit" name="EnregistrerCat" value="Enregistrer">';
    		echo'</FORM><br/>';}
     
    	// Affichage du formulaire de création d'une sous catégorie
    	if(isset($_POST['Creer_ssCategorie'])) {
    		echo '<h2>Cr&eacute;er une sous catégorie</h2>';
    		echo'<FORM method="post" action="Parametres_Categories.php" onsubmit="return valider();" name= "CreerSousCat">';
    		echo'<label>Choisir une catégorie mère :</label>';
    		echo'<SELECT name="IdCat">';
     
    		//Construction du contenu de la liste déroulante
    		$sql = "SELECT DISTINCT composer.idCatOperations, libelleCatOperations FROM catoperations, composer WHERE composer.idUtilisateurs = '".$_SESSION['IdUtilisateur']."' AND composer.idCatOperations = catoperations.idCatOperations ORDER BY libelleCatOperations"; 
    		$resultat = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
    		while ($ligne=mysql_fetch_array($resultat)){
    			echo '<OPTION VALUE="'.$ligne['idCatOperations'].'">'.$ligne['libelleCatOperations'].'</OPTION>';}
    		echo '</SELECT><br/>';
    		echo'<label for="categorie">Titre de la sous catégorie :</label><input type="text" id="TitreSsCat" name="TitreSsCat"><br/>';
    		echo'<input type="submit" name="EnregistrerSsCategorie" value="Enregistrer" ><br/>';
    		echo'</FORM><br/>';}
    Pour le formulaire "CreerCat" pas de soucis, mais pour "CreerSousCat" ca ne fonctionne pas...

    Voici ma fonction JS :

    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
     
     
    function valider(){
     
    		if(document.CreerCat.titrecat.value == "") {
    			alert("Erreur : Merci de saisir une catégorie.");
    			return false;}
    		else {
    			return true;}
     
    		if(document.CreerSousCat.TitreSsCat.value == "") {
    			alert("Erreur : Merci de saisir une sous catégorie.");
    			return false;}
    		else {
    			return true;}
    	}
    Pour moi, je ne vois pas pourquoi cela ne fonctionne pas étant donné que le fonctionnement est similaire sur les deux formulaires...

    Si vous avez des idées et une solution

    Merci beaucoup !

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour,
    pourquoi vouloir mélanger les 2 formulaires/validation, alors qu'ils s'affichent séparément ?
    Code javascript : 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
    function validerCat(){
    		if(document.CreerCat.titrecat.value == "") {
    			alert("Erreur : Merci de saisir une catégorie.");
    			return false;
    		} else {
    			return true;
    		}
    }
    function validerSousCat(){
    		if(document.CreerSousCat.TitreSsCat.value == "") {
    			alert("Erreur : Merci de saisir une sous catégorie.");
    			return false;
    		} else {
    			return true;
    		}
    }

    PS : ici, c'est le forum PHP. Un rapport ?

  3. #3
    Membre expert Avatar de Fench
    Homme Profil pro
    Chercheur en informatique
    Inscrit en
    Mai 2002
    Messages
    2 353
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Groenland

    Informations professionnelles :
    Activité : Chercheur en informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Mai 2002
    Messages : 2 353
    Points : 3 390
    Points
    3 390
    Par défaut
    Bonjour,

    C normal suivant ta structure de ta fonction JS ... Inversse les deux conditions par exemple et tu verrras que c tjs le deuxième formulaire qui tournera et pas le premier.

    CAR suivant ta structure de ta fonction Valider, qd c ton deuxième formulaire qui l'appele alors dans le premier if, elle va directement dans le return false.
    Deux solutions, deux fonctions JS comme le post du dessus, ou une fonction JS qui switch sur l'id du formulaire par exemple.

  4. #4
    Membre confirmé Avatar de oceane751
    Profil pro
    Intégrateur Web
    Inscrit en
    Novembre 2004
    Messages
    1 280
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Intégrateur Web

    Informations forums :
    Inscription : Novembre 2004
    Messages : 1 280
    Points : 575
    Points
    575
    Par défaut
    j'aurai fait ça

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    function valider(){
     
    		if(document.CreerSousCat.titrecat.value == "") {
    			alert("Erreur : Merci de saisir une catégorie.");
    			return false;
    }
     
     
    		if(document.CreerSousCat.TitreSsCat.value == "") {
    			alert("Erreur : Merci de saisir une sous catégorie.");
    			return false;}
    }
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    document.nameduform.namedel'input.value

  5. #5
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2011
    Messages
    24
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Cher (Centre)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Conseil

    Informations forums :
    Inscription : Mars 2011
    Messages : 24
    Points : 15
    Points
    15
    Par défaut
    Merci pour vos réponses !

    J'ai décidé d'adopter la solution d'Océane

    Résolu !!!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Validation de formulaire en Javascript ou pas ?
    Par djmic dans le forum Général JavaScript
    Réponses: 20
    Dernier message: 27/06/2015, 20h04
  2. Validation de formulaire en javascript et envoi en PHP
    Par Knutt dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 20/02/2011, 22h09
  3. Réponses: 4
    Dernier message: 20/02/2011, 12h32
  4. valider un formulaire avec javascript
    Par x2thez dans le forum jQuery
    Réponses: 9
    Dernier message: 29/06/2009, 20h51
  5. Validation de formulaire en javascript
    Par crocodingo dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 02/05/2007, 17h19

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo