Pb listes déroulantes mysql PHP javascript
lundam
Messages postés
4
Statut
Membre
-
lundam Messages postés 4 Statut Membre -
lundam Messages postés 4 Statut Membre -
Bonjour papymucho
je me suis inspiré du code de papymucho mai j'ai un problème, aucune erreur d'exécution, mais juste que la deuxième liste ne s'affiche pas et donc ne me permet pas un choix lorsque la première est renseigné.
J'ai une première liste contenu dans une base de donnée concernant des catégories d'annuaire
Le premier fichier _inc_select_catannu.php
puis un deuxième fichier pour la seconde liste (sous catégorie de l'annuaire)
Chaque catégorie donne accés à une liste de sous catégorie
_inc_select_souscatannu.php
le code javascript inséré dans le <head> de ma page formulaire.
et enfin l'extrait de mon code html du fichier formulaire avec extention .php où
j'ai inséré : <script type="text/javascript" src="jquery.js"></script> entre </head> et <body>
Ceci n'est qu'un extrait du code car il est assé long, j'ai des scripts de différentes vérifications et autres. L'ensemble du formulaire fonctionne correctement à l'exéption de la deuxième liste déroulante qui ne s'affiche pas après sélection dans la première.
Pourriez vous si possible m'aider à vérifier ce code, car après plusieurs essai infructueux, je ne vois pas le problème, il est vrai que je ne suis pas dévelopeur, mais je me débrouille et là j'en perd mon latin....
Merci pour votre aide
je me suis inspiré du code de papymucho mai j'ai un problème, aucune erreur d'exécution, mais juste que la deuxième liste ne s'affiche pas et donc ne me permet pas un choix lorsque la première est renseigné.
J'ai une première liste contenu dans une base de donnée concernant des catégories d'annuaire
Le premier fichier _inc_select_catannu.php
<select id="select_catannu" name="select_catannu" OnChange="show_form(this)">
<option value="void">Catégorie</option>
<?php
include("connect.php");
$query = "SELECT id_catannu , catannu FROM wmi_categorie ORDER BY wmi_categorie . id_catannu ASC LIMIT 0, 100 ";
$rq = mysql_query($query) or die(mysql_error());
while ($row=mysql_fetch_array($rq, MYSQL_ASSOC))
{
$id_cat = $row["id_catannu"];
$categorie = $row["catannu"];
echo "<option value='$id_cat'>$categorie</option>";
}
include("disconnect.php");
?>
</select>
puis un deuxième fichier pour la seconde liste (sous catégorie de l'annuaire)
Chaque catégorie donne accés à une liste de sous catégorie
_inc_select_souscatannu.php
<select id="select_souscat" name="select_souscat">
<option value="void">Sous catégorie</option>
<?php
include("connect.php");
$var=$_POST['var'];
$query = "SELECT id_souscatannu , catannu , sous_catannu FROM wmi_souscategorie WHERE catannu='$var' ORDER BY sous_catannu ASC LIMIT 0, 300 ";
$rq = mysql_query($query) or die(mysql_error());
while ($row=mysql_fetch_array($rq, MYSQL_ASSOC))
{
$id_souscat = $row["catannu"];
$souscat = $row["sous_catannu"];
echo ("<option value='$id_souscat'>$souscat</option>");
}
include("disconnect.php");
?>
</select>
le code javascript inséré dans le <head> de ma page formulaire.
et enfin l'extrait de mon code html du fichier formulaire avec extention .php où
j'ai inséré : <script type="text/javascript" src="jquery.js"></script> entre </head> et <body>
......
....
..
function show_form(id_form)
{
get_url(id_form.value);
}
function get_url(test)
{
var selected = document.getElementById("select_catannu").options[document.getElementById("select_catannu").selectedIndex].value;
$.ajax
(
{
type: "POST",
url: "_inc_select_souscatannu.php",
data: "var="+test,
success:
function(msg)
{
$("#tr_test").append("<td class='title'><b>Sous catégorie</b></td><td>"+ msg +"</td>");
if(selected=="void") $("#tr_test").hide();
else $("#tr_test").show();
}
}
);
}
</script></head>
<script type="text/javascript" src="jquery.js"></script>
<body><form name="mail_form" method="post" action="<?=$_SERVER['PHP_SELF']?>" onSubmit="return verifSelection()">
<div align="center"></div>
<p align="center">
<table width="500" border="0" align="center">
<p align="center">
</p><tr>
<td><font face="Verdana" size="2">Nom</font></td>
<td><input name="champ1" type="text"></td>
</tr><tr>
<td><font face="Verdana" size="2">Prénom</font></td>
<td><input name="champ2" type="text"></td>
</tr><tr>
<td><font face="Verdana" size="2">Titre du site</font></td>
<td><input name="champ3" type="text"> (50 caractères maximum)</td>
</tr><tr>
<td><font face="Verdana" size="2">URL du site</font></td>
<td><input name="champ4" type="text"> (http:// obligatoire)</td>
</tr><tr>
<td><font face="Verdana" size="2">Catégorie</font></td>
<td><?php include('_inc_select_catannu.php')?></td>
</tr><tr id='tr_test'>
</tr><tr>
<td width><font face="Verdana" size="2">Votre Email</font></td>
<td width><input name="zone_email" type="text"></td>
</tr><tr>
<td valign="top"><font face="Verdana" size="2">Description (255 caractères maximum)</font></td>
<td><textarea name="zone_texte" cols="40" rows="10"></textarea></td>
</tr><tr>
<td valign="top">
<input name="nbre_champs_texte" type="hidden" id="nbre_champs_texte" value="4">
<input name="nbre_zone_listecat" type="hidden" id="nbre_zone_listecat" value="1">
<input name="nbre_zone_listecat" type="hidden" id="nbre_zone_listesouscate" value="1">
<input name="nbre_zones_texte" type="hidden" value="1">
<input name="nbre_zone_email" type="hidden" value="1">
<input name="titre_champ1" type="hidden" value="Nom">
<input name="titre_champ2" type="hidden" value="Prénom">
<input name="titre_champ3" type="hidden" value="Titre du site (50 caractères maximum)">
<input name="titre_champ4" type="hidden" value="URL du site">
<input name="categorie_url" type="hidden" value="Catégorie">
<input name="souscate_url" type="hidden" value="Sous catégorie">
<input name="titre_email" type="hidden" value="Votre Email">
<input name="titre_zone" type="hidden" value="Description (255 caractères maximum)"></td>
<td><div align="center">
<input type="reset" name="Reset" value="Effacer">
<input type="submit" name="envoi" value="Envoyer">
</div></td>
</tr>
</table>
<div align="center"></div>
</form></body></html>
Ceci n'est qu'un extrait du code car il est assé long, j'ai des scripts de différentes vérifications et autres. L'ensemble du formulaire fonctionne correctement à l'exéption de la deuxième liste déroulante qui ne s'affiche pas après sélection dans la première.
Pourriez vous si possible m'aider à vérifier ce code, car après plusieurs essai infructueux, je ne vois pas le problème, il est vrai que je ne suis pas dévelopeur, mais je me débrouille et là j'en perd mon latin....
Merci pour votre aide
A voir également:
- Pb listes déroulantes mysql PHP javascript
- Listes déroulantes excel - Guide
- Listes déroulantes en cascade excel - Guide
- Easy php - Télécharger - Divers Web & Internet
- Telecharger javascript - Télécharger - Langages
- Mysql community server - Télécharger - Bases de données