afficher input en fonction d'un select alimenté par sql
bonjour,
voila j'ai trouver un script que j ai adapter a mon site pour afficher un input si on choisi une catégorie dans liste déroulante multi critère alimenter par base sql mais cela ne fonctionne pas:
Code:
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 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48
| <?php
include("../include/session.php");
include("../UneAnnonce/affichercategorie.js");
$description = "";
$keywords = "";
$subject = "";
$title = "";
$fakea = "";
$menu = true;
$content=true;
$publicite=false;
$serveur = "localhost";
$admin = "root";
$mdp = "";
$base = "idealeparut";
$connexion = mysql_connect($serveur, $admin, $mdp);
mysql_select_db($base, $connexion);
// On récupère tous les articles, triés par catégorie, titre, référence.
$req = 'SELECT c.nom_categorie,s.nom_sous_categorie
FROM categorie_annonce as c, sous_categorie_annonce as s
where s.num_categorie=c.id_categorie
';
$res = mysql_query($req) or exit('Erreur: '.mysql_error());
$num_categorie = null;
$content.='<select name="choixPosteSelect" onChange="ifOther(this.value)" id="selectPoste" style="display:block;">
<option value="" selected="selected"> </option>
';
while ($donnees = mysql_fetch_assoc($res)) {
// Si on change de catégorie, on l'affiche dans le <select>.
if ($donnees['nom_categorie'] !== $num_categorie) {
$num_categorie = $donnees['nom_categorie'];
$content.='<optgroup label="'.$num_categorie.'">';
}
//On ajoute "logiquement" notre <option>.
$content.=' <option value="'.$donnees['nom_categorie'].'">'.$donnees['nom_sous_categorie'].'
';
}
$content.='</select><BR /><BR />
<P><input type="text" id="inputPoste" name="choixPosteInput" value="" maxLength="32" style="display:none;" /></P>';
include("../include/base2.php");
?> |
et la page affichercategorie:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| <script type="text/javascript">
function ifOther(elem){
if(elem == 'Auto'){
document.getElementById('inputPoste').style.display = 'block';
document.getElementById('selectPoste').style.display = 'block';
document.getElementById('selectPoste').value = '';
}
else{
document.getElementById('inputPoste').style.display = 'none';
document.getElementById('selectPoste').style.display = 'block';
document.getElementById('inputPoste').value = '';
}
}
</script> |
mais le input n 'apparait pas quand je choisi Auto de plus, il faudra que cela est créer pour plusieurs catégorie différent input appariterons dans la page.
merci de votre aide.