PHP-Chargement de ma seconde liste déroulante

benooiit Messages postés 8 Date d'inscription   Statut Membre Dernière intervention   -  
Reivax962 Messages postés 3672 Date d'inscription   Statut Membre Dernière intervention   -
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 :

<?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:

3 réponses

benooiit Messages postés 8 Date d'inscription   Statut Membre Dernière intervention   1
 
Personne ? Je commence à douter de vos compétences là ?
:-)

.....Benooiit......
1
Ssylvainsab Messages postés 2884 Date d'inscription   Statut Modérateur Dernière intervention   825
 
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
1
Reivax962 Messages postés 3672 Date d'inscription   Statut Membre Dernière intervention   1 011
 
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
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
0