begin process at 2012 05 31 03:55:18
  Trouver un code source :
 
dans
 
Accueil > Forum > 

PHP

 > 

Base de données

 > 

MySQL

 > 

Mettres des liens dans une liste déroulante php


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Mettres des liens dans une liste déroulante php

lundi 15 juin 2009 à 14:38:35 | Mettres des liens dans une liste déroulante php

Shikapowa

Mesdames Messieurs bonjour :)
Un petit soucis à ce jours, j'essaie (en vain) d'instaurer des liens dans des listes déroulantes (<option>) mais cela ne fonctionne pas.
Je vais tout d'abord vous montrer le code:
page: requete.php
            <select name="division" size="1">
                    <option value="*"><?php
                                    mysql_select_db($database, $Commerce);
                                          // Affiche les différentes divisions à l'écran
                                     while ($tableau = mysql_fetch_row($resdivision))
                                         {
                                             echo "<OPTION value=".$tableau[0].">".$tableau[0]." - ".$tableau[1]."";
                                         }
                                        ?>
                </select>

J'affiche donc une liste déroulante avec différente valeur (les différentes divisions d'une gamme de produit) qui sont tableau[0] et le nom des divisions tableau[1]. Je voudrais que dès que l'utilisateur choisit une divisions ça amène sur cette page avec une variable dans l'URL
Exemple, il choisit ENDO - ENDOSCOPIE
ça fait une redirection sur requete.php?div=ENDO
donc je pensais faire <option ...><a href ="requete.php?div=<?php echo $tableau[0] ?>"> <?php echo $tableau[0]." - ".$tableau[1]; ?> </a></option>

mais ça veut pas ='(
Quelqu'un pour m'aider :D?
Cordialement,
shikapowa
lundi 15 juin 2009 à 15:03:09 | Re : Mettres des liens dans une liste déroulante php

wolfcyber95

Salut,

Voici un exemple avec un formulaire qui redirige automatique à la selection d'une option, ce ne sont pas des liens il faut en faite mettre dans l'evenement onChange de ta liste de deroulant un window.location.href(lien), c'est donc du javascript :

echo "
<form action=\"\" method=\"post\">
<select name=\"division\" onChange=\"if (this.value != '') window.location.href('requete.php?div=' + this.value);\">";
       
$req = $bd_nu->sql_query("SELECT * FROM table");
       
while ($row = $bd_nu->sql_fetcharray($req))
{            
  $val = $row['champ1'];
  $aff = $row['champ2'];
  echo "<option value=\"$val\">$aff</option>";
}
           
echo "</select></form>";



Voila j'espere que ceci pourra t'aider

@+
lundi 15 juin 2009 à 15:29:47 | Re : Mettres des liens dans une liste déroulante php

Shikapowa

Oui j'étais actuellement en train d'essayer ce système qui fonctionne très bien je te l'accorde mais aurais tu une idée pour que la liste déroulante affiche ce que l'utilisateur à choisit après le rafraichissement de la page?
Car là par exemple je choisit ENDO, ça affiche bien l'URL ?div=ENDO
Mais au niveau de la liste déroulante après le rafraichissement, ça n'affiche plus ce que l'utilisateur à choisit.

As tu une idée?
lundi 15 juin 2009 à 15:33:53 | Re : Mettres des liens dans une liste déroulante php

Shikapowa

Ah et une autre remarque, ce système fonctionne bien sous IE mais pas sur Mozilla oO
lundi 15 juin 2009 à 15:40:08 | Re : Mettres des liens dans une liste déroulante php

wolfcyber95

Ah oui, essai de faire ceci :


echo "
<form  action=\"\" method=\"post\">
<select id="list1" name=\"division\" onChange=\"if (document.getElementById('list1').value != '') window.location.href('requete.php?div=' + document.getElementById('list1').value);\">";
       
$req = $bd_nu->sql_query("SELECT * FROM table");
       
while ($row = $bd_nu->sql_fetcharray($req))
{            
  $val = $row['champ1'];
  $aff = $row['champ2'];
  echo "<option value=\"$val\">$aff</option>";
}
           
echo "</select></form>";
lundi 15 juin 2009 à 16:00:36 | Re : Mettres des liens dans une liste déroulante php

Shikapowa

Nan monsieur IE (comme d'hab) ne veut pas, il retourne la première valeur à l'affichage tandis que monsieur Firefox lui n'accepte même pas le onchange x)

lundi 15 juin 2009 à 16:05:18 | Re : Mettres des liens dans une liste déroulante php

wolfcyber95

retire le if (document.getElementById('list1').value)

essai comme ceci pour voir :

echo "
<form action=\"\" method=\"post\">
<select name=\"division\" onChange=\"window.location.href('requete.php?div=' + this.value);\">";
       
$req = $bd_nu->sql_query("SELECT * FROM table");
       
while ($row = $bd_nu->sql_fetcharray($req))
{            
  $val = $row['champ1'];
  $aff = $row['champ2'];
  echo "<option value=\"$val\">$aff</option>";
}
           
echo "</select></form>";

lundi 15 juin 2009 à 16:12:46 | Re : Mettres des liens dans une liste déroulante php

Shikapowa

J'ai retiré le if dès le départ car ça fonctionné pas avec, donc ce que je fais là, c'est que j'affiche $division = $_GET['division'] pour que l'utilisateur est la trace de ce qu'il a choisit mais ça affiche deux fois le choix dans la liste déroulante (le choix de l'utilisateur + les différents choix)
lundi 15 juin 2009 à 16:18:43 | Re : Mettres des liens dans une liste déroulante php

kohntark

Membre Club
Salut,

Ajoute un test dans la boucle while, du style :

while(...) {
  [...]
  echo '<option value="'.$val.'"';
  if ($val === $_GET['division']) echo ' selected="selected"';
  echo  ">$aff</option>";
}


Cordialement,


Kohntark -

lundi 15 juin 2009 à 16:53:13 | Re : Mettres des liens dans une liste déroulante php

Shikapowa

Nikel, j'ai modifié le code avec la condition de Kohntark et ça sélectionne, Merci beaucoup vous deux pour votre aide précieuse, juste une dernière question, sur la 2e liste déroulante je mets ceci
                            <select name="famille1" size="1" onChange="window.location.href('requete.php?div=<?php echo $division?>&fam1='+ this.value)">

Sauriez vous pourquoi je reçois %20 avant le résultat de this.value
Exemple :
requete.php?div=ENDO&fam1=%20022
Au lieu de
requete.php?div=ENDO&fam1=022 ?

Cordialement,
Antoine

1 2

Cette discussion est classée dans : php, liste, tableau, liens, divisions


Répondre à ce message

Sujets en rapport avec ce message

Liste deroulante avec php [ par lutin06 ] Salut a tous Je vous explique mon probleme : Sur mon site de vente en ligne , je dispose d'un tableau avec des produits , dans chaque case du tablea Générer un tableau php a partir d une requête [ par jeffreynaz ] Bonjour , je rencontre un petit problème sur mon site :/ Je dispose d une première page php avec une liste déroulante a partir de données de ma base convertir plusieurs variable en un tableau [ par 1030 ] Bonjour, me semble que c'est possible .... j'ai des variable [code=php]$nom = "mon nom"; $prenom = "asddfsd";[/code] et j'aimerais les faire passer filtrer un tableau avec une liste déroulante [ par mouatasim ] Salut j'Ai un tableau lie avec la base de donnée et deux liste déroulant aussi lie avec la BDD et je veux le tableau m'affiche le resultat de filtrag faire un select dans ma table eleve [ par msi079 ] salut a vous j'ai crée une table a partir de laquelle je veux faire un SELECT mais je reçois l'erreur : ---------------------------------------------- Récupérer les valeurs de la première colonne d'une table dans un tableau [ par etincelle01 ] Bonsoir, Dans PHP, il y a la fonction mysql_fetch_array() qui place les enregistrements résultats d'une requête dans un tableau. Mais il n'y a pas de Menu avec liens dans la page [ par eurostars2 ] Bonjours a tous je commence seulement a apprendre le php et il y a quelque chose que je n'arrive pas a faire, je veux crée un menu dans une page index liste deroulante avec php et mysql [ par jolina87 ] bonjour; j'ai un formulaire au quel il y a une liste déroulante qu'il faut qu'elle récupère une liste de noms de la base pour afficher les coordonnée requete sql php [ par enchien ] Bonjour a tous, Mon problème est le suivant : J'ai une base de données avec les trois tables suivantes (j'utilise sqlite3): Table Users ----------- Combo box de choix avec les enregistrement d'une table [ par claude77260 ] Bonjour, j'ai relevé sur le site une fonction permettant de créer un combobox avec les enregistrements d'une table mais impossible de la faire foncti


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,671 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales