PHP, probleme avec un formulaire

Résolu
Bonjour,
je suis débutant en PHP, et j'ai un probleme. J'ai un formulaire qui contient deux balises select je remplis la premier balise avec le resultat d'une requette SQL et j'aimerai que le contenu de la deuxieme balise select soit choisit selon la valeur de la permiere balise select.
j'ai parcouru qqc forum et j'ai trouve une solution avec javaScript mais ca ne marche pas.
Merci.
Configuration: Windows XP
Firefox 2.0.0.11

5 réponses

  1. salut,
    tu pourrais montrer ton code ? j'arrive pas a comprendre ce que tu veus faire
    1. Bonjour,
      voici un frament de code :

      <form action="recherche.php" method="get" name="rechercher" id="marque">
      Marque : <select name="marque" id="marque" class="carac_voiture">
      <option>- - - Indifférent - - -</option>
      <?php
      mysql_select_db($database_bdauto, $bdauto);
      $verif_query_marque=sprintf("select * from marque;");
      $verif_marque = mysql_query($verif_query_marque, $bdauto) or die(mysql_error());
      while($row_verif_marque = mysql_fetch_assoc($verif_marque)) {
      ?>
      <option><?php echo $row_verif_marque['intitule_marque']?></option>
      <?php
      }
      ?>
      </select>

      Modele:
      <select name="modele" id="modele" class="carac_voiture">
      <option>- - - Indifférent - - -</option>
      <!-- ici je voudrai selectionner de la table modele l'ensemble des modele qui ont une marque bien determine a savoir la marque qui a ete selectionne dans le premeir select--!>
      </select>

      et merci.
      1. Bonjour,

        Voiçi un principe:

        Tu enregistres sous recherche.php, la page s'appelle elle même et tout le traitement a lieu dans le même fichier.

        Je t'ai mis la méthode POST et qqs modifs pour l'extraction dans la BDD, vérifie qd même les noms de table et champs, c'est source d'erreurs et de confusion d'avoir mis "marque" pour le nom de la table et le nom de la liste 1(voitures pour la table serait plus approprié):

        fichier recherche.php:

        <?php
        mysql_connect("host","login","pass") or die(mysql_error());
        mysql_select_db($database_bdauto) or die(mysql_error());// ta base
        if(isset($_POST['marque']) AND isset($_POST['marque'])){
        
        	// ici tu rajoutes  ton traitement de la recherche avec la  marque et le modèle et affichage de la réponse
        
        }else{
        	if(isset($_POST['marque']) AND $_POST['marque']!=""){$marque=$_POST['marque'];}
        //afichage du formulaire
        ?>
        	<form action="recherche.php" method="post" name="rechercher" id="marque">
        	Marque : <select name="marque" id="marque" class="carac_voiture">
        	<option>- - - Indifférent - - -</option>
        	<?php
        	$query_marque="SELECT DISTINCT * FROM marque";
        	$rep_marque = mysql_query($query_marque) or die(mysql_error());
        
        	while($row_marque = mysql_fetch_assoc($rep_marque)) {
        	?>
        		<option value="<?php echo $row_marque['intitule_marque']?>" <?php if($marque==$row_marque['intitule_marque']){echo "selected";} ?>><?php echo $row_marque['intitule_marque']?></option>
        		<!-- le if ci dessus c'est pour conserver la selection marque au réaffichage de la page -->
        	<?php
        	}
        	?>
        	</select>
        	<?php
        	if(isset($_POST['marque']) AND $_POST['marque']!=""){
        	// on affiche la deuxieme liste en fonction choix marque
        		?>
        		Modele:
        		<select name="modele" id="modele" class="carac_voiture">
        		<option>- - - Indifférent - - -</option>
        		<?php
        		$query_modele="SELECT * FROM marque WHERE intitule_marque='".$marque."'";
        		$rep_modele = mysql_query($query_modele) or die(mysql_error());
        
        		while($row_modele = mysql_fetch_assoc($rep_modele)) {
        		?>
        			<option value="<?php echo $row_modele['intitule_modele']?>" ><?php echo $row_modele['intitule_modele']?></option>
        		<?php
        		}
        		?>
        		</select> 
        		<?php
        	}
        }
        	?>
        


        Pas testé, donc a qqs erreur de frappe près !
        1. Bonjour,
          merci pour le code ca marche tres bien. en faite j'ai un autre problemen je veux envoyer un mail de confirmation d'inscription avec la fonction mail, mais elle m'affiche qu'il y a une erreur j'ai bien configurer mon fichier php.ini mais ca ne marche pas.
          merci
          1. Quelle erreur ? si tu ne donnes pas une copie c'est difficile de t'aider