Téléchargé 6 fois
Vote des utilisateurs
1
0
Détails
Licence : Non renseignée
Mise en ligne le 15 février 2011
Langue : Français
Référencé dans
Navigation
Listes liées
Listes liées
Il faut juste rajouter la connection à la base.
Bonjour,
(remplacer tous les print par des echo)
il faudrait aussi remplacer
print " selected";
par
Ca donne :
Code : | Sélectionner tout |
echo '<option value="'. $id_salle. '">' . $nom_salle . '</option>';
il faudrait aussi remplacer
Code : | Sélectionner tout |
echo ' selected="selected"';
Code : | Sélectionner tout |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | <?php // Connexion a la base include('../connectbase.inc') ; // Execution requete $ma_req = "SELECT * FROM lieu;"; $res_req = mysql_query($ma_req) or die("Selection table \"lieu\" impossible"); // Affectation des variables utilisees pour l'affichage if (mysql_num_rows($res_req)!=0) { // resultat non vide while ($une_ligne = mysql_fetch_array($res_req)) { $id_lieu = $une_ligne["id_lieu"]; $nom_lieu = $une_ligne["nom_lieu"]; $sel_lieu = ($id_lieu == $lieux)? ' selected="selected"' : ''; // option selectionnee ? oui : non echo '<option value="'.$id_lieu'"'.$sel_lieu.'>'.$nom_lieu.'</option>'; } } ?> |
Il manque un point (après $id_lieu):
Pour que le choix reste affiché :
$lieux est justement le choix qui avait été fait
on doit avoir au début du fichier :
echo '<option value="'.$id_lieu.'"'.$sel_lieu.'>'.$nom_lieu.'</option>';
Code : | Sélectionner tout |
$sel_lieu = ($id_lieu == $lieux)? ' selected="selected"' : ''; // option selectionnee ? oui : non
on doit avoir au début du fichier :
Code : | Sélectionner tout |
$lieux = $_POST['selectlieu'];
ok, ca, c'est le fichier php
(-> je vois déjà des bouts de codes qui n'ont pas lieu d'être ! ...)
Ce qu'il me faut (pour tester), c'est la source générée (dans le navigateur -> "afficher la source"
(-> je vois déjà des bouts de codes qui n'ont pas lieu d'être ! ...)
Ce qu'il me faut (pour tester), c'est la source générée (dans le navigateur -> "afficher la source"
A priori, ca doit ressembler à ca, une fois les fautes corrigées et le code remis en forme :
Code : | Sélectionner tout |
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 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 | <?php // connection à la DB $link = mysql_connect ($host,$user,$pass) or die ('Erreur : '.mysql_error() ); mysql_select_db($db) or die ('Erreur :'.mysql_error()); ?> <?php // initialisation/recuperation de la selection // lieu if (isset($_GET['lieu'])){ $lieu = $_GET['lieu']; } elseif (isset($_POST['selectlieu'])){ $lieu = $_POST['selectlieu']; } else { $lieu = ''; } // salle if (isset($_POST['selectsalle'])){ $salle = $_POST['selectsalle']; } else { $salle = ''; } ?> <!DOCTYPE HTML> <html xmlns="http://www.w3.org/1999/xhtml" dir="ltr"> <head> <title>Document sans titre</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <script type="text/javascript"> function modifcombo(){ document.location.replace("essai3.php?lieu=" + document.form1.selectlieu.value ); document.form1.selectlieu.value = <?php echo $lieu; ?>; } </script> </head> <body> <p>Essai formulaire</p> <form name="form1" method="post" action=""> <table width="100%" border="1"> <tr> <td>lieu :</td> <td> <select id="idselectlieu" name="selectlieu" class="txt16-000000" onchange="javascript: modifcombo();"> <option value="">...</option><!-- Valeur vide pour forcer l'utilisateur a selectionner --> <?php // Execution requete : tous les LIEUX $ma_req = "SELECT * FROM lieu;"; $res_req = mysql_query($ma_req) or die("Selection table \"lieu\" impossible"); // Affectation des variables utilisees pour l'affichage if (mysql_num_rows($res_req)!=0) { // resultat non vide while ($une_ligne = mysql_fetch_array($res_req)) { $id_lieu = $une_ligne["id_lieu"]; $nom_lieu = $une_ligne["nom_lieu"]; $sel_lieu = ($id_lieu == $lieu)? ' selected="selected"' : ''; // option selectionnee ? oui : non ?> <option value="<?php echo $id_lieu; ?>"<?php echo $sel_lieu; ?>><?php echo $nom_lieu; ?></option> <?php } // fin while } // fin if ?> </select> </td> </tr> <tr> <td>salle :</td> <td> <select id="idselectsalle" name="selectsalle" class="txt16-000000"> <option value="">...</option><!-- Valeur vide pour forcer l'utilisateur a selectionner --> <?php // Execution requete : les SALLES de ce lieu (selectionné) $ma_req = "SELECT * FROM salle WHERE id_lieu = '".$lieu."';"; $res_req = mysql_query($ma_req) or die("Selection table \"salle\" impossible"); // Affectation des variables utilis?es pour l'affichage if (mysql_num_rows($res_req)!=0) // resultat non vide { while ($une_ligne = mysql_fetch_array($res_req)) { $id_salle = $une_ligne["id_salle"]; $nom_salle = $une_ligne["nom_salle"]; $sel_salle = ($id_salle == $salle)? ' selected="selected"' : ''; // option selectionnee ? oui : non ?> <option value="<?php echo $id_salle; ?>"<?php echo $sel_salle; ?>><?php echo $nom_salle; ?></option> <?php } // fin while } // fin if ?> </select> </td> </tr> <tr> <td colspan="2"> <input type="submit" name="envoiformulaire" value="envoyer" /> </td> </tr> </table> </form> </body> </html> |
Bonjour Claudine,
1/ n'utilise JAMAIS ni accent, ni espace dans un mot de fichier !
listesliées.php -> listesliees.php
ok, vu !
Peux-tu redonner TON code ?
1/ n'utilise JAMAIS ni accent, ni espace dans un mot de fichier !
Dès que je choisis un lieu dans la 1ère liste déroulante, la 2ème liste reste vide! Mais, si je clic sur envoyer, tout va alors fonctionner normalement.
Peux-tu redonner TON code ?
Remplace le script par :
Code : | Sélectionner tout |
1 2 3 4 5 6 | <script type="text/javascript"> function modifcombo(){ var idlieu = document.form1.selectlieu.value; document.location.replace("?lieu=" + idlieu ); } </script> |
Bonjour Frenchsting,
voilà 2 mois que je galère sur les listes liées mais malheureusement, toujours sans succès. Pouvez-vous m'aider?
J'ai testé votre logiciel et suis particulièrement intéressé par ce dernier.
Malheureusement, lors des tests, il me signale une erreur que je n'arrive pas à éliminer. J'ai travaillé par copier/coller puisse-que le téléchargement ne fonctionne pas!
Parse error: syntax error, unexpected T_STRING in C:\Program Files\EasyPHP-5.3.3.1\www\infopub\essai3.php on line 95
Pouvez-vous m'aider à corriger cette ligne?
De ce fait, il n'affiche rien dans la 2ème liste
Sincères remerciements
Claudine
voilà 2 mois que je galère sur les listes liées mais malheureusement, toujours sans succès. Pouvez-vous m'aider?
J'ai testé votre logiciel et suis particulièrement intéressé par ce dernier.
Malheureusement, lors des tests, il me signale une erreur que je n'arrive pas à éliminer. J'ai travaillé par copier/coller puisse-que le téléchargement ne fonctionne pas!
Parse error: syntax error, unexpected T_STRING in C:\Program Files\EasyPHP-5.3.3.1\www\infopub\essai3.php on line 95
Pouvez-vous m'aider à corriger cette ligne?
Code : | Sélectionner tout |
1 2 | print"<option value="."id_salle. ">" . "nom_salle . "</option>"; |
Sincères remerciements
Claudine
Bonsoir Jreaux62
Grand merci pour cette réponse rapide.
En remplaçant dans un premier temps tous les 'print par 'echo' ainsi que :
tout fonctionne" presque" normalement puisque enfin et grâce à vous après une selection dans la liste des lieux, la 2ème liste me donne les choix possibles correspondants
Petit problème: le choix affiché dans la liste 1 ne reste pas affiché!
J'ai par la suite modifié le code comme indiqué(ca donne)
mais une erreur empêche de voir le résultat:
Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING, expecting ',' or ';' in C:\Program Files\EasyPHP-5.3.3.1\www\infopub\essai3.php on line 56]
c'est-à-dire à la ligne:
Pouvez-vous une fois de plus venir à mon secours car je n'arrive pas a trouver la solution?
Sincères remerciements car vous êtes mon sauveur après autant de recherches infructueuses.
Encore merci, mille fois merci
Claudine
Grand merci pour cette réponse rapide.
En remplaçant dans un premier temps tous les 'print par 'echo' ainsi que :
Code : | Sélectionner tout |
echo ' selected="selected"';
Petit problème: le choix affiché dans la liste 1 ne reste pas affiché!
J'ai par la suite modifié le code comme indiqué(ca donne)
mais une erreur empêche de voir le résultat:
Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING, expecting ',' or ';' in C:\Program Files\EasyPHP-5.3.3.1\www\infopub\essai3.php on line 56]
c'est-à-dire à la ligne:
Code : | Sélectionner tout |
echo '<option value="'.$id_lieu'"'.$sel_lieu.'>'.$nom_lieu.'</option>';
Sincères remerciements car vous êtes mon sauveur après autant de recherches infructueuses.
Encore merci, mille fois merci
Claudine
Bonsoir Jreaux62
Désolé de vous importuner une fois de plus mais le message suivant apparaît:
Notice: Undefined index: selectlieu in C:\Program Files\EasyPHP-5.3.3.1\www\infopub\essai3Bis.php on line 23
Mais cependant l'affichage du lieu selectionné reste affiché 1seconde pour disparaître mais, aussitôt dans le formulaire apparaît dans: >>>>>>1<<<<<<( ce qui correspond bien à l' ld du lieu)Ennuyeux que le nom du lieu ne reste pas affiché dans la liste lieu!
Je ne doute pas un instant que vous pourrez résoudre ce petit problème!
Sincères salutations et merci pour votre aide précieuse.
claudine
Désolé de vous importuner une fois de plus mais le message suivant apparaît:
Notice: Undefined index: selectlieu in C:\Program Files\EasyPHP-5.3.3.1\www\infopub\essai3Bis.php on line 23
Mais cependant l'affichage du lieu selectionné reste affiché 1seconde pour disparaître mais, aussitôt dans le formulaire apparaît dans: >>>>>>1<<<<<<( ce qui correspond bien à l' ld du lieu)Ennuyeux que le nom du lieu ne reste pas affiché dans la liste lieu!
Je ne doute pas un instant que vous pourrez résoudre ce petit problème!
Sincères salutations et merci pour votre aide précieuse.
claudine
Developpez.com décline toute responsabilité quant à l'utilisation des différents éléments téléchargés.