Bonjour, il y a quelques temps j'ai utilisé un script (ajax) permettant à deux listes déroulantes de se mettre à jour en direct, chaque liste contient des noms, lorsque j'envoie le formulaire et avec l'action d'un INSERT, ma BDD récupère l'id des noms de ces listes plutot que leur nom , or j'ai beau vérifié mon INSERT envoie bien le champ nom , pourriez-vous m'aider à trouver ce problème ?
voici les scripts correspondants à mon problème:
edition.php :
getSections(this.value) renvoie vers le fichier dept_xhr.js qui permet de communiquer entre deux page php en direct : la page est : section.php :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 <form method="post" action="ajoutbasedd.php" id="f" name="formulaire" enctype="multipart/form-data"> <div id="adpdf"> <table id="findpdf" width="100%" cellpadding="0" cellspacing="0;"> <tr><td id="T" colspan="2"> Ajouter un document PDF/WORD à une section d'une catégorie</td></tr> <tr><td id="S"> <select name="cat" id="theme" onchange="getSections(this.value);"> <option value="vide" selected="selected">Selectionnez une Catégorie</option> <?php while($ligne = mysql_fetch_array($recherche)){ ?> <option value="<?php echo $ligne["idr"]; ?>" ><?php echo $ligne["theme"]; ?></option> <?php } ?> </select> </td> <td id="B"><span id="blocSections"></span><br /></td> </tr> <tr><!--<td id="S">Rechercher le document PDF/WORD à ajouter</td>--><td id="B" colspan="2"><input type="file" name="tdoc" size="50"/></td></tr> </table> </div>
enfin voici la page ajoutbasedd.php qui envoie les données à la BDD:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 $sql2 = "SELECT `id_section`, `section`". " FROM `liste_section`". " WHERE `id_theme` = ". $idr ."". " ORDER BY `id_section`;"; $connexion = mysql_connect($serveur, $admin, $mdp); mysql_select_db($base, $connexion); $rech_sect = mysql_query($sql2, $connexion); /* Un petit compteur pour les départements */ $nd = 0; /* On crée deux tableaux pour les numéros et les noms des départements */ $code_sect = array(); $nom_sect = array(); /* On va mettre les numéros et noms des départements dans les deux tableaux */ while(false != ($ligne_sect = mysql_fetch_assoc($rech_sect))) { $code_sect[] = $ligne_sect['id_section']; $nom_sect[] = $ligne_sect['section']; $nd++; } /* Maintenant on peut construire la liste déroulante */ $liste = ""; $liste .= '<select name="sect" id="section"><option value="vide" selected="selected">Selectionnez une Section</option>'."\n"; ''; for($d = 0; $d < $nd; $d++) { $liste .= ' <option value="'. $code_sect[$d] .'">'. htmlentities($nom_sect[$d]) .'</option>'."\n"; } $liste .= '</select>'."\n";
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 $categorie = mysql_real_escape_string($_POST['cat']); $section = mysql_real_escape_string($_POST['sect']); $serv = "INSERT INTO save(gdoc,theme,soussection,type) VALUES ('".$doc_name."','".$categorie."','".$section."','".$tgdoc."')";
Partager