FORUM Tom's Hardware » Programmation » PHP & MySQL & ASP » Liste déroulante dynamique PHP/MySQL
 

Liste déroulante dynamique PHP/MySQL

Il y a 423 utilisateurs connus et inconnus. Pour voir la liste des connectés connus, cliquez ici
Ajouter une réponse



 Mot :   Pseudo :  
 
Bas de page
Auteur
 Sujet : Liste déroulante dynamique PHP/MySQL
 
Plus d'informations

Bonjour la room

Je suis en train de monter une liste déroulante, contenant des valeurs issues de la base sql. Jusqu'ici, c'est du tout bon, les valeurs sont bien indiquées dans la liste déroulante. Maintenant, j'aimerai que si une personne sélectionne DJ_Depannage, que cela l'entraine sur cette fiche. Alors, comment fait-on pour insérer un lien hypertexte dans une liste déroulante ? je n'ai pas trouvé d'exemple de script.
Merci par avance
DJ Depannage

Il n'en restera qu'un.
Plus d'informations

Je ne sais pas s'il est possible d'insérer un lien directement dans la liste déroulante.
Mais tu peux le gérer avec l'événement OnChange en Javascript.


Message édité par Duncan le 10-10-2003 à 16:12:26
Plus d'informations

Oui en effet, mais je préfère développer une liste issue de donnée de la base sql, car en admettant qu'une personne change un profil, je souhaite que la liste déroulante se remette à jour automatiquement. Avec le Java, je dois retoucher le code manuellement.
Merci pour cette réponse rapide !

Il n'en restera qu'un.
Plus d'informations

mais tu peux continuer à charger ta liste dynamiquement comme tu le fais.
Simplement, tu rajoutes du JavaScript et pas du Java.
ca fera un truc du style :

<Input type=combo name=truc_machin javascript: OnChange=allerA()>

et tu tapes ta fonction AllerA qui pourrait accepter en paramètre la valeur renvoyée par ta liste.
Et tu peux rediriger vers la page en fonction de la sélection. Donc tu retouches rien du tout.


Message édité par Duncan le 10-10-2003 à 16:23:08
Plus d'informations

Oula ! je suis novice en php... Pourrais tu me donner plus de précision pour insérer cette balise.
Merci ;o)
DJ_Depannage

Sans danger si l'on se conforme au mode d'emploi
Plus d'informations

DJ Depannage a écrit :

Oula ! je suis novice en php... Pourrais tu me donner plus de précision pour insérer cette balise.
Merci ;o)
DJ_Depannage

echo "<Input type=combo name=truc_machin javascript.....";
[:le kneu]


---------------
Le rock, c'est rouky :sol:
Il n'en restera qu'un.
Plus d'informations

tout àààààà fait.... +1

Trou du Luke
Plus d'informations

A foutre en haut de page :

Code :
  1. <script language="JavaScript" type="text/JavaScript">
  2. <!--
  3. function AllerA(targ,selObj,restore){
  4.   eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'" );
  5.   if (restore) selObj.selectedIndex=0;
  6. }
  7. //-->
  8. </script>



ton formulaire avec les éléments dynamiques :

Code :
  1. <form name="form1">
  2.   <select name="menu1" onChange="AllerA('parent',this,0)">
  3.     <option value="URL1" selected>Element1</option>
  4.     <option value="URL2">Element2</option>
  5.   </select>
  6. </form>



Où "URL1 / URL2" et "Element1 / Element2" peuvent être récupéré d'une base de donnée.


Merci Monsieur DreamWeaver ! :jap:

Plus d'informations
Plus d'informations

Bonjour, j'ai créé 1 base de données sur MYSQL comportant les 2 tables suivantes :

code rubrique
1 Langage
2 OS
3 SGBD

code item code_rub
1 PHP 1
2 ASP 1
3 JavaScript 1
4 C++ 1
5 Linux 2
6 Windows 2
7 Mac OS X 2
8 FreeBSD 2
9 Unix 2
10 MySQL 3
11 PostgreSQL 3
12 Oracle 3

et g trouvé sur le net comment faire pour que quand je change de rubrique ma liste d'items change,la il n'y a pas de probleme. en fait la où ca coince c que je veux sauvegarder la rubrique sélectionnée et l'item sélectionné mais je n'y arrive pas si qqn peut m'aider voici le code :

<SCRIPT LANGUAGE="JavaScript">

function ModifierListe(code_item) {

lg = document.frmDemo1.zlItem.length;

// On vide la liste
for (i = lg - 1; i >= 0; i--) {
document.frmDemo1.zlItem.options[i] = null;
}

code_rub = document.frmDemo1.zlRubrique.selectedIndex;

<?php

// Génération des Items par Rubriques
$sql = "SELECT code FROM demo_rubrique ORDER BY code";
$resultat = mysql_db_query($dbName, $sql);

$max_lignes = 0;
$option_max = '';

while ($enr = mysql_fetch_array($resultat)) {

$sql = "SELECT code, item ";
$sql .= "FROM demo_item ";
$sql .= "WHERE code_rub='".$enr[0]."'";
$sql .= "ORDER BY item";
$resultat2 = mysql_db_query($dbName, $sql);

echo " if (document.frmDemo1.zlRubrique.options[code_rub].value == ".$enr[0]." ) {\n";
echo " document.frmDemo1.zlItem.length = ".(mysql_num_rows($resultat2)).";\n";
$cpt = 0;
while ($enr2 = mysql_fetch_array($resultat2)) {
echo " document.frmDemo1.zlItem.options[".$cpt."].value = ".$enr2[0].";\n";
echo " document.frmDemo1.zlItem.options[".$cpt."].text = \"".$enr2[1]."\";\n";
echo " if (code_item == ".$enr2[0]." ) document.frmDemo1.zlItem.options[".$cpt."].selected = true;\n";
$cpt++;
if ($cpt > $max_lignes) $max_lignes = $cpt;
if (strlen($enr2[1]) > strlen($option_max)) $option_max = $enr2[1];
}
echo " }\n";
}
?>
}
</SCRIPT>

<?php
// ----------------------------------------------------------------------------
// Liste Rubriques
// ----------------------------------------------------------------------------
$sql = "SELECT code, rubrique FROM demo_rubrique ORDER BY rubrique";
$resultat = mysql_db_query($dbName, $sql);

echo "<FORM METHOD=POST NAME='frmDemo1'>";

echo "<BR> <B>Rubriques</B> ";
echo " <SELECT NAME='zlRubrique' onChange='ModifierListe(-1)'>\n";
if (!isset($zlRubrique)) $zlRubrique = - 1;
while ($enr = mysql_fetch_array($resultat)) {
echo "<OPTION VALUE='".$enr[0]."'";
if ($zlRubrique == $enr[0]) echo " SELECTED";
echo ">".htmlspecialchars($enr[1])."</OPTION>\n";
}
echo "</SELECT> \n";

// ----------------------------------------------------------------------------
// Liste Items
// ----------------------------------------------------------------------------
echo " <B>Items</B> ";
echo " <SELECT NAME='zlItem'>\n";
for ($cpt = 0; $cpt < $max_lignes; $cpt++)
echo "<OPTION>".ereg_replace(".", "--", $option_max)."</OPTION>\n";
echo "</SELECT> \n";
if (!isset($zlItem)) $zlItem = -1;
echo "<SCRIPT LANGUAGE='JavaScript'>\n;ModifierListe(".$zlItem." );\n</SCRIPT>\n";
// ----------------------------------------------------------------------------

echo "<INPUT TYPE='submit' VALUE='Valider'>\n";

echo "</FORM>";

// ----------------------------------------------------------------------------
// Résultats des sélections
// ----------------------------------------------------------------------------
echo "Sélection :<BR>\n";

if (isset($zlRubrique) && $zlRubrique != "" ) {
$sql = "SELECT rubrique FROM demo_rubrique WHERE code='".$zlRubrique."'";
$resultat = @mysql_db_query($dbName, $sql);
$enr = @mysql_fetch_array($resultat);
echo "Rubrique = $zlRubrique [$enr[0]]<BR>\n";
}

if (isset($zlItem) && $zlItem != "" && $zlItem != -1) {
$sql = "SELECT item FROM demo_item WHERE code='".$zlItem."'";
$resultat = @mysql_db_query($dbName, $sql);
$enr = @mysql_fetch_array($resultat);
echo "Item = $zlItem [$enr[0]]<BR>\n";
}

?>

Profil : Pointeur
Plus d'informations

non mais m*rde :o

1/ up de 2 ans inutile
2/ balises [code]
3/ élague ton code, tout n'est pas util
4/ url pour tester ??


---------------
Da Bidz Triad©®™: Bidz Interceptor
.:: Smileyz version 4.2 [050625]::. -- Code source disponible sous licence GPL.
[u

Aller à :
Ajouter une réponse
  FORUM Tom's Hardware » Programmation » PHP & MySQL & ASP » Liste déroulante dynamique PHP/MySQL
 

Annonces Google
Publicité