Bonsoir,
Je suis bloquée sur un problème qui concerne à la fois SGBD - Javascript et PHP d'où il m'était difficile de savoir où poster et j'espère que je suis au bon endroit.

Ce que je cherche à faire c'est dans mon formulaire j'ai des menus déroulant (select) uniquement l'un d'entre eux se remplis quand la page se lance. C'est celui qui fait répond à un "show databases". Je souhaite si je clique sur une base que les tables qu'elle contiennent apparaissent dans le second SELECT. Et c'est la que je bloque ...

Je sais que je doit utiliser un onchange mais je n'arrive pas à savoir comment, mes connaissances en javascript n'étant pas très fort. J'ai pensée à récupérer, avec le onchange, dans une variable la valeur sélectionnée (je ne parle pas de .value mais du .text qui correspondrai au nom de la base). Sauf que je ne parvient ni à trouver des exemples qui m'aide, ni à comprendre comment faire ...

Merci d'avance pour votre aide ...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
<?php
/* connection a une base mysql en local */
$connect = @mysql_connect("ma_base","login","") or die("erreur de connexion au serveur");

/* les requete */
$requete="SHOW DATABASES";
$res=mysql_query($requete,$connect);

echo "Databases :
        <select name=\"database\" id=\"database\" onchange= ?????\"><option></option>";
        
/* recuperation des resultats */
while($ligne=mysql_fetch_row($res)){
       echo "<option>$ligne[0]</option>" ;
}
echo "</select>";

/* selection de la base de donnees mysql */
mysql_select_db($base, $connect) or die("erreur de connexion a la base de donnees");

/* la requete */
$requete="SHOW TABLES";
$res=mysql_query($requete,$connect);

echo "Tables :
        <select name=\"table\" id=\"table\"><option></option>";

/* recuperation des resultats */
while($ligne=mysql_fetch_row($res)){
       echo "<option>$ligne[0]</option>" ;
}
echo "</select>";

/* fermeture de la connection */
mysql_close($connect);
?>