Création
d'entreprise
Posez votre question Signaler

Liste déroulante en php Mysql [Résolu]

mich8569 69Messages postés 2 juillet 2004Date d'inscription - Dernière réponse le 17 avril 2005 à 13:45
Bonjour,
J'ai un petit problème dont je suis sur beaucoup d'entre vous ont la solution
Voila, je remplis une liste déroulante avec une table Mysql (en php).
Mon problème est que je n'arrive pas à faire en sorte que chaque élement de la liste soit un lien vers une autre page. Voila ce que j'ai fait pour le moment :

$req="select num, nom, dossier from live";
$rs=mysql_query ($req,$CONNEXION);

$ld = "<SELECT NAME='ListeUrl' >";
$ld .= "<OPTION VALUE=0>Choisissez</OPTION>";
// On boucle sur la table
while ( $row = mysql_fetch_array( $rs))
{
$temp = $row['nom'];
$ld .= "<OPTION VALUE='sommaire.php'>$temp</OPTION>";
}
$ld .= "</SELECT>";
print $ld;

Je voudrais que chaque valeur de la liste soit un lien vers la page sommaire.php.

Quelqu'un sait ce qu'il faut que je rajoute??
Parce que moi je ne vois pas du tout.... :'(

Merci d'avance pour l'aide ;)
Lire la suite 

Liste déroulante en php Mysql »

7 réponses
Réponse
+3
moins plus
et ben je m'attendais pas a une réponse aussi rapide! :D

Merci d'avoir répondu en tout cas

Nan en fait ce que je voudrais c'est que lorsque je choisis quelque chose dans la liste déroulante, la page qui est en lien s'ouvre sans appuyer sur un bouton quelconque

Je sais comment on fait en html, ca utilise du javascript mais après pour passer ca en php je vois pas. En gros en html on met ca entre <head> et </head> :

<script language="JavaScript">
function envoie(frm){
URL = frm.mgros.options[frm.mgros.selectedIndex].value
if (frm.mgros.selectedIndex != 0){
if (target == "blank") mywindow = window.open(''+URL+'');
else if (target == "self") document.location = URL;
else parent.frames[target].location = URL;
}}
</script>

et après la ou je définis ma liste déroulant je rajoute ca :

<select NAME="mgros"
onChange="envoie(this.form)">

mais j'ai essayé d'utiliser ce code javascript et après en php j'ai fait :

<SELECT NAME=mgros' onChange='envoie(this.form)'>

Mais ca marche pas, quelqu'un sait pourquoi??
Ajouter un commentaire
Réponse
+2
moins plus
Bon j'ai trouvé une solution mais le truc c'est que j'ouvre une autre page alors que je voudrais que la page s'ouvre sans en ouvrir une autre (en gros c'est comme un target=top)

voila mon code :

?> <select name="mgros" onChange="window.open(this.options[this.selectedIndex].value)"><?

$ld .= "<OPTION VALUE=0>Choisissez</OPTION>";

while ( $row = mysql_fetch_array( $rs))
{
$temp = $row['nom'];
$ld .= "<OPTION VALUE='sommaire.htm' >$temp</OPTION>";
}
$ld .= "</SELECT>";
print $ld;

Voila, est-ce que quelqu'un sait comment faire et cequ'il faut changer?
Ajouter un commentaire
Réponse
+1
moins plus
Si je pense que ca marche mais moi j'ai fait autrement (merci pour ta réponse ca m'a quand meme donné des pistes pour le faire ;) ) :



?>
<!--On insère la ComboBox-->
<!--Si on veut ouvirir une nouvelle page pour le lien : window.open (....)-->
<select onchange="window.location=(this.options[this.selectedIndex].value)" name="mgros">
<?
//Sert à insérer la ComboBox
$ld .= "<OPTION VALUE=0>Choisissez</OPTION>";
// On boucle sur la table live
while ( $row = mysql_fetch_array( $rs))
{
//On récupère le nom du live et son identifiant (un numéro)
$temp = $row['nom'];
$numerolive=$row['num'];
//On linsère dans la ComboBox en lui donnant un lien
$ld .= "<OPTION VALUE='sommaire1.php?var=$numerolive&var2=1'>$temp</OPTION>";
}
$ld .= "</SELECT>";
//On insère la ComboBox dans la page avec tous ses élements
print $ld;


Voila voila et merci au forum ;)
Ajouter un commentaire
Réponse
+0
moins plus
il te faut un bouton submit non ?
Ajouter un commentaire
Réponse
+0
moins plus
<form action="http://www.google.fr" method="post" id="formulaire">

<SELECT onchange="document.forms['formulaire'].submit();">
<OPTION value=1>choix1</OPTION>
<OPTION value=2>choix2</OPTION>
<OPTION value=3>choix3</OPTION>
</SELECT>
</form>

ET VOILOUUUUUUUUUUU!!!
Ajouter un commentaire
Réponse
+0
moins plus
non?
Ajouter un commentaire
Réponse
+0
moins plus
utilise document.location = ton URL
Ajouter un commentaire
Ce document intitulé « Liste déroulante en php Mysql » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?