Bonjour j'ai 2 liste deroulante,
La premiere va rechercher les base dedonnée existante et me les insere dans ma liste quand je valide ca crée une 2e liste deroulante et son inséré directement toute les table de cette base.
par contre au moment du réaffichage je voudrais que ma base selectionné reste par default !!!
Alors je sais pas si c un peu de javascript a inserer ou si c'est un test php...
à vous de me dire
je vous fourni le source :
<html>
<head>
</head>
<body>
<form name="database" method='post' action='tp7.php'>
<?php echo affichDb() ?>
</form>
<?php
function affichDb()
{
//Connection au serveur
if (($connect = mysql_connect('127.0.0.1','root','')) == 0 )
{
die("Impossible de se connecter au serveur");
}
$sql = "SHOW DATABASES";
$req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
$combo = "";
$combo.="<select name='combo'>";
$combo.="<option value='default'> [-- Database --] </option>";
while($data = mysql_fetch_row($req))
{
for ($i=0;$i<count($data);$i++)
{
$combo.="<option value=".$data[$i].">".$data[$i]."</option>";
}
}
$combo.="</select>";
$combo.="<input type='submit' value='ok'><br>";
if (isSet($_POST['combo']))
{
$combo.= affichTable();
}
return $combo;
//mysql_close($connect);
}
function affichTable()
{
if(mysql_select_db($_POST['combo']) == 0)
{
die("Impossible de se connecter à la base");
}
$sql = "SHOW TABLES";
$req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
$combo2="";
$combo2.="<select name='combo2'>";
$combo2.="<option value='default'> [-- Table --] </option>";
while($data = mysql_fetch_row($req))
{
for ($i=0;$i<count($data);$i++)
{
$combo2.="<option value=".$data[$i].">".$data[$i]."</option>";
}
}
$combo2.="</select>";
if (isSet($_POST['combo2']))
{
$combo2.=affichChamp();
}
return $combo2;
}
function affichChamp()
{
if(mysql_select_db($_POST['combo']) == 0)
{
die("Impossible de se connecter à la base");
}
$sql = "EXPLAIN ".$_POST['combo'].".".$_POST['combo2'];
$req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
$champ="";
while($data = mysql_fetch_row($req))
{
$champ.="<input type='text' value".$data[0].">".$data[0]."</input><br>";
}
return $champ;
}
?>
</body>
</html>