PHP-Chargement de ma seconde liste déroulante
                    
        
     
             
                    benooiit
    
        
    
                    Messages postés
            
                
     
             
            8
        
            
                                    Statut
            Membre
                    
                -
                                     
Reivax962 Messages postés 3742 Statut Membre -
        Reivax962 Messages postés 3742 Statut Membre -
        Bonjour à tous,
Je veux réaliser le chargement de ma seconde liste déroulante via ma BDD après la selection d'un élément dans ma première elle-même chargée par la base de données. La première se charge bien mais j'arrive pas pour la deuxième. Pourriez-vous me dire ce qui cloche dans mon programme ?
Je précise aussi que je n'ai aucun message d'erreur et que je debute en PHP alors merci d'avance pour votre coup de pouce.
...Benoit...
Voici mon code :
                
            
                
    
    
    
        Je veux réaliser le chargement de ma seconde liste déroulante via ma BDD après la selection d'un élément dans ma première elle-même chargée par la base de données. La première se charge bien mais j'arrive pas pour la deuxième. Pourriez-vous me dire ce qui cloche dans mon programme ?
Je précise aussi que je n'ai aucun message d'erreur et que je debute en PHP alors merci d'avance pour votre coup de pouce.
...Benoit...
Voici mon code :
<?php
if (!isset($mainfile)) 
	{
	include("mainfile.php"); 
	}
//Connexion à la base de données
openbase(); 
//Recherche des marques de tronconneuse	
$req_marque = mysql_query ("SELECT marque_id, marque_text FROM marque WHERE outils_id=1 ORDER BY marque_text");
?>
<form name="formulaire1" method="get" action="essai.php">
  <p><strong>Liste des marques </strong>
    <select name="marque" onchange="essai.btnsubmit.click();">
	<option selected value='0'>Toutes les marques</option>
	<?php 
	    //Chargement de la liste déroulante avec le resultat de la requête
		while(list($marque_id, $marque_text) = mysql_fetch_row($req_marque)) 
		{
			if ($marque_id==$marque) 
				{ 
				$sel = "selected"; 
				}
			echo "<option $sel value=\"$marque_id\">$marque_text</option>\n";
			$sel = ""; 
		}
	?>
    </select>
	<?php 
	mysql_free_result($req_marque);
	$req_type = mysql_query ("SELECT type_id, marque_id, type_text FROM type WHERE marque_id ='$marque' ORDER BY type_text");
	?>
  </p>
  <p><strong>Liste des modèles de la marque selectionné</strong>  
    <select name="type">
	<option selected value='0'>Tous les modeles </option>
	<?php
	while(list($type_id, $type_text) = mysql_fetch_row($req_type)) 
	{
		if ($type_id==$type) 
			{
			$sel = "selected ";
			}
		echo "<option $sel value=\"$type_id\">$type_text</option>\n";
		$sel = "";
	}	
	?>
    </select> 
  </p>
    <p>
	<input name="btnsubmit" type="submit" id="btnsubmit" value="Envoyer">  
	</p>
  <p> </p>
</form>
            
            
        A voir également:         
- PHP-Chargement de ma seconde liste déroulante
- Liste déroulante excel - Guide
- Liste déroulante en cascade - Guide
- Liste code ascii - Guide
- Liste déroulante google sheet - Accueil - Guide bureautique
- Liste de diffusion whatsapp - Guide
3 réponses
                        
                    Bonjour.
Déjà, pour avoir une erreur ajoute un "or(mysql_error())" (avec ou sans die) après ta requête :
mysql_query ('SELECT `marque_id`,`marque_text` FROM `marque` WHERE `outils_id`=1 ORDER BY `marque_text`') or die(mysql_error());
Dis si tu as une erreur et laquelle c'est, avec le message d'erreur.
a plus
    
                Déjà, pour avoir une erreur ajoute un "or(mysql_error())" (avec ou sans die) après ta requête :
mysql_query ('SELECT `marque_id`,`marque_text` FROM `marque` WHERE `outils_id`=1 ORDER BY `marque_text`') or die(mysql_error());
Dis si tu as une erreur et laquelle c'est, avec le message d'erreur.
a plus
                        
                    Bonjour,
Tes variables $marque et $type sont utilisées directement, alors qu'elles sont censées être en GET...
Si tu rajoutes au début de ton script
Par ailleurs, petite astuce qui ne change pas grand chose : tu peux remplacer ton essai.btnsubmit.click(); par un essai.submit();
Ca change rien, hein, mais c'est plus clair je trouve :)
Xavier
    
                Tes variables $marque et $type sont utilisées directement, alors qu'elles sont censées être en GET...
Si tu rajoutes au début de ton script
if (isset($_GET["marque"])) $marque = $_GET["marque"]; if (isset($_GET["type"])) $type= $_GET["type"];, ça donne quoi ?
Par ailleurs, petite astuce qui ne change pas grand chose : tu peux remplacer ton essai.btnsubmit.click(); par un essai.submit();
Ca change rien, hein, mais c'est plus clair je trouve :)
Xavier
