darkaz
Messages postés3Date d'inscriptionmercredi 28 septembre 2005StatutMembreDernière intervention 4 décembre 2005
-
26 nov. 2005 à 19:00
cs_djagger
Messages postés536Date d'inscriptionlundi 5 mai 2003StatutMembreDernière intervention29 janvier 2009
-
30 nov. 2005 à 13:34
Je ne m'y connais pas du tout en javascript mais j'aurais besoin de faire quelque chose:
Prenons un formulaire tout bete qui prend dans un input text un nom, un
prénom et une ville et qui les insere dans une base de données.
Ce que je voudrais faire, c'est faire un menu qui déroulerait les noms
des inscrits dans la base de donnée (par une bete requete sql, jusque
la, pas de problème) et qui a chaque fois que l'on déroulera un nouveau
nom, afichera dans les champs "prénom" et "ville" les infos
correspondant au nom dans la base de données.
le script ressemble un peu a ca :
<?php
$connect=mysql_connect('localhost','root','') or die("Erreur de connexion au server");
mysql_select_db('test',$connect) or die("Erreur de connexion a la base");
$nom ='';
$prenom ='';
$ville ='';
//recupere les infos de la base
$qry = 'SELECT * FROM mytable';
$res=mysql_query($qry) or die ("Erreur requete");
echo'<form method="post" action="test.php">
Noms dans la base';
//affiche dans un menu déroulant les noms contenus dans la base
//selectionne les nom, prenoms et ville a partir du nom choisi
$qry = "SELECT * FROM mytable WHERE nom='$name'";
$res=mysql_query($qry) or die ("Erreur requete");
$row = mysql_fetch_array($res);
echo '<form method="post" action="page2.php">
Nom:
Prenom:
Ville:
</form>
';
?>
En gros, la, j'ai deux boutons submit: le 1er pour selectionner le nom, et le 2e pour envoyer le formulaire.
Ce que je voudrais faire, c'est supprimer le premier, et faire qu'a
chaque fois qu'on change de nom dans le menu déroulant, ca change les
infos dans les champs du formulaire en dessous.
Je suppose que ca doit etre possible en javascript, mais comme je n'y connais rien, j'aurais besoin d'un coup de pouce ^^
cs_djagger
Messages postés536Date d'inscriptionlundi 5 mai 2003StatutMembreDernière intervention29 janvier 20091 30 nov. 2005 à 13:34
Salut !
T'as 2 possibilités : soit tu charges tous les noms, prénoms et ville en javascript, et quand tu change ton menu déroulant, tu vas chercher dans des tableaux les valeurs correspondantes.
Soit, dès que tu changes le nom sélectionné dans le menu déroulant, tu recharges la page avec les informations ....
Après ca dépend de la taille de ta base !
La deuxième solution est plus simple, et vu ce que t'as déjà fait ce sera plus rapide ... juste un truc à changer :
//affiche dans un menu déroulant les noms contenus dans la base
while ($row = mysql_fetch_array($res)){
echo '<select name="name" onChange="this.form.submit()" ><option value ='.$row['nom'].'>'.$row['nom'].'</option>'; }
echo '</select>';