Liste déroulante PHP - AJAX
Résolu
krysis
Messages postés
14
Date d'inscription
Statut
Membre
Dernière intervention
-
jpom -
jpom -
Bonjour,
J'ai crée aprioris un script afin de faire une liste déroulante dynamique mais sa n'a pas trop l'air de marcher !!
Je réussi a avoir la liste des Bureau mais pas celle des prise. Excusez mon vocabulaire mais cela fait 1 semaine que j'ai decouvert MySQL EASYPHP et :p
Voila mon Script :
<?php
// Configuration MySQL
$host_db = "localhost";
$user_db = "root";
$password_db = "";
$bdd_db = "reel_ip";
// connexion a la base de donnees et selection de la table
$connect_db = mysql_connect($host_db,$user_db,$password_db);
mysql_select_db($bdd_db,$connect_db);
require_once("xajax_core/xajax.inc.php");
function Selectprise($bureauid)
{
$options="";
// créé un nouvel objet permettant d'envoyer une réponse au côté client
$objResponse = new xajaxResponse();
// on selectionne les sous-catégorie en fonction de l'id de la catégorie mère
$sql="SELECT prise FROM prise WHERE prise = '".$bureauid."'";
$req=mysql_query($sql);
while ($prise = mysql_fetch_array($req))
{
// on place toutes les sous-catégories dans des options valables pour la liste SELECT
$options .= '<option value="'.$prise['id'].'">'.$prise['prise'].'</option>';
}
// l'Ajax remplacera le innerHTML (html intérieur) de la liste_souscat pour y mettre $options
$objResponse->addAssign("liste_prise","innerHTML",$options);
// envoie la réponse en XML
return $objResponse->getXML();
}
$xajax = new xajax();
//$xajax->debugOn();
$xajax->registerFunction("Selectprise");
$xajax->processrequest();
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Test de select dynamiques</title>
<?php $xajax->printJavascript("\xajax_js") ?>
</head>
<body>
<center>
<h1>RECHERCHE</h1>
<form id="testForm1">
<br>
<br>
Choisissez un Bureau : <select id="liste_bureau" onchange="xajax_Selectprise(this.value)">
<option value=""></option>
<?php
$sql="SELECT bureau FROM bureau ORDER BY bureau ASC";
$req=mysql_query($sql) or die(mysql_error());
while($bureau = mysql_fetch_array($req))
{
echo '<option value="' . $bureau['bureau'].'">' . $bureau['bureau'] . '</option>';
}
?>
</select><br />
<br>
</br>
</br>
Choisissez une prise : <select id="liste_prise">
</select>
</form>
</center>
</body>
</html>
En espérant une réponse très prochainement je vous remercie de l'attention que vous porterez a ma demande.
J'ai crée aprioris un script afin de faire une liste déroulante dynamique mais sa n'a pas trop l'air de marcher !!
Je réussi a avoir la liste des Bureau mais pas celle des prise. Excusez mon vocabulaire mais cela fait 1 semaine que j'ai decouvert MySQL EASYPHP et :p
Voila mon Script :
<?php
// Configuration MySQL
$host_db = "localhost";
$user_db = "root";
$password_db = "";
$bdd_db = "reel_ip";
// connexion a la base de donnees et selection de la table
$connect_db = mysql_connect($host_db,$user_db,$password_db);
mysql_select_db($bdd_db,$connect_db);
require_once("xajax_core/xajax.inc.php");
function Selectprise($bureauid)
{
$options="";
// créé un nouvel objet permettant d'envoyer une réponse au côté client
$objResponse = new xajaxResponse();
// on selectionne les sous-catégorie en fonction de l'id de la catégorie mère
$sql="SELECT prise FROM prise WHERE prise = '".$bureauid."'";
$req=mysql_query($sql);
while ($prise = mysql_fetch_array($req))
{
// on place toutes les sous-catégories dans des options valables pour la liste SELECT
$options .= '<option value="'.$prise['id'].'">'.$prise['prise'].'</option>';
}
// l'Ajax remplacera le innerHTML (html intérieur) de la liste_souscat pour y mettre $options
$objResponse->addAssign("liste_prise","innerHTML",$options);
// envoie la réponse en XML
return $objResponse->getXML();
}
$xajax = new xajax();
//$xajax->debugOn();
$xajax->registerFunction("Selectprise");
$xajax->processrequest();
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Test de select dynamiques</title>
<?php $xajax->printJavascript("\xajax_js") ?>
</head>
<body>
<center>
<h1>RECHERCHE</h1>
<form id="testForm1">
<br>
<br>
Choisissez un Bureau : <select id="liste_bureau" onchange="xajax_Selectprise(this.value)">
<option value=""></option>
<?php
$sql="SELECT bureau FROM bureau ORDER BY bureau ASC";
$req=mysql_query($sql) or die(mysql_error());
while($bureau = mysql_fetch_array($req))
{
echo '<option value="' . $bureau['bureau'].'">' . $bureau['bureau'] . '</option>';
}
?>
</select><br />
<br>
</br>
</br>
Choisissez une prise : <select id="liste_prise">
</select>
</form>
</center>
</body>
</html>
En espérant une réponse très prochainement je vous remercie de l'attention que vous porterez a ma demande.
A voir également:
- Liste déroulante PHP - AJAX
- Liste déroulante excel - Guide
- Liste déroulante en cascade - Guide
- Liste déroulante google sheet - Accueil - Guide bureautique
- Liste code ascii - Guide
- Easy php - Télécharger - Divers Web & Internet
10 réponses
Ok ok, bon le problème c'est que c'est diffiicle de t'aider juste en lisant un code(mon cerveau n'interprète pas encore...)
Si tu peux mettre en ligne le tout...
Ou alors me filer tous les scripts (js, php, html et SQL)...
Voilà @+
Si tu peux mettre en ligne le tout...
Ou alors me filer tous les scripts (js, php, html et SQL)...
Voilà @+
http://www.megaupload.com/?d=2ZEA4VH3 > Fichier php
http://www.megaupload.com/?d=XT0K4D7I > Fichier SQL
http://www.megaupload.com/?d=XT0K4D7I > Fichier SQL
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Merci a l'heure actuelle je cherche encore la solution je ne plus progresser dans mon site sans ça !! :p
je n'ai pas encore vérifier les scripts mais tu peux déjà faire 2 corrections :
echo '<option value="' . $bureau['bureau'].'">' . $bureau['bureau'] . '</option>';
à remplacer par
echo '<option value="' . $bureau['iid'].'">' . $bureau['bureau'] . '</option>'; //je pense
et surtout :
Choisissez une prise : <select id="liste_prise">
</select>
à remplacer par
Choisissez une prise : <select>
<div id="liste_prise"></div>
</select>
echo '<option value="' . $bureau['bureau'].'">' . $bureau['bureau'] . '</option>';
à remplacer par
echo '<option value="' . $bureau['iid'].'">' . $bureau['bureau'] . '</option>'; //je pense
et surtout :
Choisissez une prise : <select id="liste_prise">
</select>
à remplacer par
Choisissez une prise : <select>
<div id="liste_prise"></div>
</select>
Je laisse > Choisissez un bureau : <select id="liste_bureau" onchange="xajax_Selectprise(this.value)">
<option value=""></option>
et je change > Choisissez une prise : <select>
<div id="liste_prise"></div>
</select>
sa aussi > Choisissez une iP : <select>
<div id="liste_ip"></div>
</select>
c'est correcte pour l'instant ?
<option value=""></option>
et je change > Choisissez une prise : <select>
<div id="liste_prise"></div>
</select>
sa aussi > Choisissez une iP : <select>
<div id="liste_ip"></div>
</select>
c'est correcte pour l'instant ?
Voilà j'espère avoir été plus claire :)