maire106 | j'ai une liste deroulante pour selectionner une ville et apres en fonctionne de cette premiere selection, une deuxieme liste s'affiche. Le probleme et que lorsque je selectionne la premiere ville( la liste venant d'une bdd mysql fonctionne tres bien), le choix est pris en compte mais la page redevient comme au depart, la selection ne reste pas affiché et encor plus ennuyeux, les autres champs rentrés sont effacés.
Ou est l'erreur? voici un morceau de mon code: Code :
- <?php
- echo("<?xml version=\"1.0\" encoding=\"iso-8859-1\"?>\n" );
- @session_start();
- include("special.inc" );
- /* On récupère si elle existe la valeur de la ville de depart envoyée par le formulaire */
- $idr = isset($_POST['villedepart'])?$_POST['villedepart']:null;
- ?>
- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
- <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr">
- <html>
- <head>
- <title>Fiche de frais de déplacements</title>
- <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
- <script type="text/javascript" src="testchamp.js"></script>
- </head>
- <body>
- <?php
- /* On établit la connexion à MySQL avec mysql_pconnect() plutôt qu'avec mysql_connect()
- * car on aura besoin de la connexion un peu plus loin dans le script */
- if($connexion != false)
- {
- $base ="stlor_db";
- $choixbase = mysql_select_db($base, $connexion);
- $sql1 = "SELECT DISTINCT villedepart FROM distance ORDER BY villedepart;";
- $rech_villes = mysql_query($sql1);
- $ville = array();
- /* On active un compteur pour les villes */
- $nb_villes = 0;
- if($rech_villes != false)
- {
- while($ligne = mysql_fetch_assoc($rech_villes))
- {
- array_push($ville, $ligne['villedepart']);
- /* On incrémente de compteur */
- $nb_villes++;
- }
- }
- ?>
- <div align="center">
- <p><b></b>Fiche de frais de déplacements</b></p>
- <p> </p>
- </div>
- <p align="left">
- <form action="<?php echo($_SERVER['PHP_SELF']); ?>" method="post" name="fichedep" id="fichedep" onSubmit="return testsubmit()">
- <p>Période :
- <input type="text" name="periode" value="">
- </p>
- <!-- tableau d'enregistrement des valeurs-->
- <table width="100%" border="1">
- <tr>
- <th scope="col">Date</th>
- <th scope="col">Ville Départ </th>
- <th scope="col">Ville Arrivée </th>
- <th scope="col">Aller/retour</th>
- <th scope="col">Motif</th>
- <th scope="col">Tarif</th>
- <th scope="col">Km</th>
- <th scope="col">Total</th>
- </tr>
- <tr>
- <td><input size=10 name="datage" maxlength="100"></td>
- <td><select name="villedep" id="villedep" onchange="document.forms['fichedep'].submit();">
- <option value="-1">- Choisissez une ville -</option>
- <?php
- for($i = 0; $i < $nb_villes; $i++)
- {
- ?>
- <option value="<?php echo($ville[$i]); ?>"<?php echo((isset($idr) && $idr == $ville[$i])?" selected=\"selected\"":null); ?>><?php echo($ville[$i]); ?></option>
- <?php
- }
- ?>
- </select> <input type="submit" value="Ajouter" onClick="gopage('villeenregistre.php')"></td>
- <td>
- <?php
- mysql_free_result($rech_villes);
-
- if(isset($idr) && $idr != -1)
- {
-
- $sql2 = "SELECT villearrivee FROM distance WHERE villedepart = ". $idr ." ORDER BY villearrivee;";
- if($connexion != false)
- {
- $rech_villear = mysql_query($sql2, $connexion) or die ("requete villearrive impossible" );
-
- $nd = 0;
-
- $nom_villear = array();
-
- while($ligne_ar = mysql_fetch_assoc($rech_villear))
- {
- array_push($nom_villear, $ligne_ar['villearrivee']);
- $nd++;
- }
-
- ?>
-
- <select name="villear" id="villear">
- <?php
- for($d = 0; $d<$nd; $d++)
- {
- ?>
- <option value="<?php echo($nom_villear[$d]); ?>"><?php echo($nom_villear[$d]." " ); ?></option>
- <?php
- }
- ?>
- </select>
- <?php
- }
- mysql_free_result($rech_villear);
- }
- ?>
- <input type="submit" value="Ajouter" onClick="gopage('villeenregistre.php')" ></td>
- <td><input type="radio" id="r3" name="r3" value="1" onClick="fradio1(3,this.value)">Aller<br>
- <input type="radio" id="r3" name="r3" value="2" onClick="fradio1(3,this.value)">Aller Retour</td>
- <td><input type="text" size="10" name="motif" maxlength="200"></td>
- <td><input type="radio" id="tarif" name="r1" value="1" onClick="fradio1(1,this.value)">0.30<br>
- <input type="radio" id="tarif" name="r1" value="2" onClick="fradio1(1,this.value)">0.35</td>
- <td><input type="text" id="km" size="10" name="km" maxlength="200"></td>
- <td><input type="button" value="Calculer" onClick="launch(this.form)"></td>
- </table>
- <p><br>
- <input type="submit" value="Retour" onClick="gopage('identite.php')">
- <input type="submit" value="Valider" onClick="gopage('nouveaupdf.php')">
- </p>
- <p align="center"><font face="Verdana, Arial, Helvetica, sans-serif" size="2">
- <br>
- </font>
- </p>
- </form></p>
- <?php
- /* Terminé, on ferme la connexion */
- mysql_close($connexion);
- }
- ?>
- </body>
- </html>
|
Message édité par maire106 le 05-07-2005 à 10:56:26
|