DE LA BASE DE DONNEES A LA LISTE DEROULANTE [Fermé]

Signaler
Messages postés
110
Date d'inscription
lundi 25 mai 2009
Statut
Membre
Dernière intervention
25 mai 2013
-
Messages postés
347
Date d'inscription
lundi 8 septembre 2008
Statut
Membre
Dernière intervention
15 novembre 2012
-
Bonjour,
je sui entrain de faire un site web,je sui novice.jaimerais savoir comment remplir une liste déroulante (comportan le nom et prenom) avec une requette select? en fait je veux avoir dans ma liste deroulante les donnees qui sont dans ma base de donnees,,

5 réponses

Messages postés
347
Date d'inscription
lundi 8 septembre 2008
Statut
Membre
Dernière intervention
15 novembre 2012
74
Salut.

Désolé pour le retard. Je ne sais pas si tu as avancé ou pas, mais voici un exemple de code basique qui permet normalement de remplir une liste select. C'est une façon de faire et il y en a d'autre. Il serait mieux par exemple que les informations de connexion soient stockées dans un fichier à part et inclus à l'aide de la fonction include_once().

<?php

//Ceci est la partie PHP qui récupère les données.

//connexion sur la base de données mysql
//il faut remplacer user et pass par les valeurs correctes permettant d'accéder
//à ta base de données
$cnx = mysql_connect("localhost","user","pass") || die ('echec de connexion');

//il faut remplacer mabase par le nom de ta base de données
$db = mysql_select_db("mabase") || die (mysql_error());

//il faut remplacer idPersonne, nom, prenom, Personne par les noms des champs et de
//table correspondant à ta base de données
$rq = 'SELECT idPersonne, nom, prenom FROM Personne ORDER BY nom ASC';

//Execute la requete
$rqe = mysql_query($rq,$cnx) || die (mysql_error());

//Construit la liste sous la forme d'une chaine
$liste = '<select name="personnes">';
//Récupère les resultats et les ajoute à la liste
while($row = mysql_fetch_array($rqe))
{
//ici aussi il faut changer les noms des champs par ceux de ta table
$liste .= '<option value="'. $row['idPersonne'] .'">' $row['prenom'] . ' ' . $row['nom'] . '</option>';
}
//ferme la liste
$liste .= '</select>';
?>

<!--code de la page HTML-->
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=windows-1250">
<title></title>
</head>
<body>
<p>Ceci est la liste des personnes extraites de la base de données :</p>

<!--ici on ajoute le code produit par Php-->
<?php echo $liste; ?>

<!--Ici on continue en Html pur-->

</body>
</html>

Bon courage.

IC
1
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 65492 internautes nous ont dit merci ce mois-ci

Messages postés
347
Date d'inscription
lundi 8 septembre 2008
Statut
Membre
Dernière intervention
15 novembre 2012
74
Salut.

Il te faut côté serveur, un langage de script type PHP, ASP, Java ou autre pour exécuter ta requete et récupérer les données. Ensuite, tu as différentes façons de faire :

- intégrer du code serveur dans ta page HTML à l'endroit où les données de la liste doivent être insérées
- faire construire la page par le langage de script serveur
- utiliser Ajax pour récupérer les données et les incorporer à ta zone de liste
- utiliser un template qui permet de fusionner des champs avec des valeurs avant d'afficher la page.

Quel langage de script serveur utilises tu ?

Cdlt

IC
Messages postés
110
Date d'inscription
lundi 25 mai 2009
Statut
Membre
Dernière intervention
25 mai 2013
8
merci pour l'aide,mais je sai vraimen pa tro commencer ce que vou me dites. j'ai php comme langage serveur
Messages postés
110
Date d'inscription
lundi 25 mai 2009
Statut
Membre
Dernière intervention
25 mai 2013
8
merci pour ton aide,cela me fait une connaissance de plus. en fait jai pu recuperer les valeur de ma base de donnees dans le champ liste,maintenan je veux afficher cette meme valeur dans un champ texte. je sai pa comment faire
Messages postés
347
Date d'inscription
lundi 8 septembre 2008
Statut
Membre
Dernière intervention
15 novembre 2012
74
Salut

Je suppose que en fait tu veux afficher dans une zone de texte la valeur sélectionnée dans la zone de liste quand on clique dessus.

Si oui, supposons que tu as le champ suivant pour ta zone de texte :

<input type="text" name="monChamp">

Tu ajoutes un événement onclick sur ta zone de liste et le code javascript qui va bien et normalement cela fonctionne :

<select name="maListe" onclick="document.getElementsByName('monChamp')[0].value=this.options[this.selectedIndex].text;">
<option value="1">valeur 1</option>
<option value="2">valeur 2</option>
</select>

Tu peux aussi mettre le code dans une fonction javascript et appelé la fonction par onclick.

Bon courage

IC