Liste deroulante ds 1 formulaire ->table Mysq

Benjamin -  
Sardino Messages postés 381 Statut Membre -
Bonjour,

Je fais un formulaire HTML qui est traite avec un script php, et je voudrais proposer a
l'utilisateur :
- de choisir un "Centre". Je veux donc lui proposer un menu deroulant (balises <select et
<option...) qui va proposer des valeurs de "Centre" presentes dans une table de ma BD Mysql. (ma
table centre etant deja remplie)

Ainsi, il choisit son centre et la valeur choisie pourra etre traitee par le script plus tard.

Comment proposer des valeurs venant de la consultation d'une table sous Mysql ??

Merci

Salut
A voir également:

2 réponses

Sardino Messages postés 381 Statut Membre 7
 
Salut Benjamin !

Et bien, c'est assez simple, mais il faut que tu précises la structure de ta base. Si tu as une table centre, qui conprend une entrée nom_centre et un index index_centre, tu envois la requête :
<?
$sql = "SELECT * FROM centre WHERE 1";
?>
Tu envois ta requête... et tu obtiens un resultat. Moi, j'utilise parfois ces deux fonctions bien pratiques (il existe d'autres solutions, dont certaines utilisent l'objet, mais pour un début...) :

<?
function connect() {
$host="ton_hote";
$user="ton_nom_d_user";
$pass="ton_mot_de_passe";
if (! $linkid=mysql_connect("$host","$user","$pass")) {
echo "Impossible de se connecter à ",$host,"<br>";
exit;
}
return $linkid;
}

function send_sql($sql) {
$db="le_nom_de_ta_base"
$linkid=connect();
if (! $result=mysql_db_query($db,$sql)) {
echo mysql_error();
exit;
}
return $result;
mysql_close($linkid);
}
?>

Donc, tu envois ta requete :

<?
$resultat=send_sql($sql);
?>
Et tu liste les éléments obtenus, pour définir les options :

<select name="centre">
<option value="" >Selectionnez ici le centre</option>
<?
While ($res=mysql_fetch_object($result)){
echo ('<option value="'.$res->index_centre.'">'.$res->nom_centre.'</option>');
}
?>
</select>

Et voilà !!!

[ Méfiez-vous des filets dérivants de la vie... ]
0
benjamin
 
Merci

Au fait, tu passes par index_centre pour afficher les choix dans ma liste... tu veux dire par index la cle primaire dans ma table.

ou bien on peut gerer cela sans passer par l'index (qui est une notion un peu floue pour moi désolé)

Merci
0
Sardino Messages postés 381 Statut Membre 7
 
Salut !

Et bien tu n'es pas obligé de passer par l'index. Tu peux transmettre le nom du centre si tu veux. Et tu n'es pa s obligé non plus de tout sélectionner de la table centre dans ta requête. Tu ne peux sélectionner que nom_centre par exemple.
J'ai utilisé l'index parce qu'en cas de table croisée, ou de changement de nom, c'est souvent plus simple à gérer.
Mais ne connaissant la structure de ta table...

@+@tous

[ Méfiez-vous des filets dérivants de la vie... ]
0
dohm Messages postés 975 Date d'inscription   Statut Modérateur Dernière intervention   67
 
'lo
Moi je me demandais comment faire une liste déroulante un peu "styly"
Avec de belles images à la place des champs classiques si vous aviez la réponse ce serait le pied.

Dohm qui vous bouleg tous
0
Bill_T
 
La solution est dans le JS, en php je vois pas trop comment faire !
0