He realizado el siguiente codigo que accede a bases de datos de Mysql obteniendo las bases de datos en un campo "select" ,en el que al modificarlo mediante el metodo "onchage" me introduce las
tablas de dicha base de datos en otro campo "select".
Bueno, el caso es que bajo linux con apache y mysql va de perlas
![apachar ojo](http://static.forosdelweb.com/fdwtheme/images/smilies/wink.png)
El caso es que me muestra las tablas de la base de datos que viene seleccionada por defecto pero al modificar de BD no cambia las tablas
![triste](http://static.forosdelweb.com/fdwtheme/images/smilies/frown.png)
Si alguien bajo windows puede probar el codigo y le funciona correctamente, me quitaria un gran peso de encima ya que no se si es de la configuracion del Php.ini o del codigo.
En fin gracias por adelantado. Este es el codigo :
<html>
<head>
</head>
<body>
<?php
$identificador = mysql_connect("localhost","root");
if (! $identificador) {
die ("Error en conexion ". mysql_error());
}
$basesdatos = mysql_list_dbs($identificador);
$i = 0;
while ($i < mysql_num_rows ($basesdatos)) {
$menu_bd[$i] = mysql_tablename ($basesdatos, $i);
$tablas = mysql_list_tables($menu_bd[$i]);
$j = 0;
while ($j < mysql_num_rows ($tablas)) {
$menu_tablas[$i][$j] = mysql_tablename ($tablas, $j);
$j++;
}
$i++;
}
print "<script language=\"javascript\">";
print "function opciones () {";
print "switch (document.formulario.base_de_datos.value) {";
for ($i = 0; $i < count ($menu_bd); $i++) {
print "case \"" . $menu_bd[$i] . "\" : document.formulario.tabla.length = ";
$length = count ($menu_tablas [$i]);
print $length . ";";
for ($j= 0; $j < $length; $j++) {
print "document.formulario.tabla.options[" .$j ."].text = \"" . $menu_tablas[$i][$j] . "\";";
print "document.formulario.tabla.options[" .$j ."].value = \"" . $menu_tablas[$i][$j] . "\";";
}
print "break;";
}
print "}";
print "}";
print "</script>";
print "<form name=formulario action=acciones.php method=post>";
print "<table align=center>";
print "<th>Base de datos<th>Tablas";
print "<tr><td>";
print "<select name=base_de_datos OnChange=\"opciones()\">";
for ($i = 0; $i < count ($menu_bd); $i++)
if ($i == 0)
print "<option value=" . $menu_bd[$i] . " selected>" .$menu_bd[$i];
else
print "<option value=" . $menu_bd[$i] . ">" .$menu_bd[$i];
print "</select>";
print "<td>";
print "<select name=tabla>";
for ($i = 0; $i < count ($menu_tablas[0]); $i++)
print "<option value=" . $menu_tablas [0][$i] . ">" .$menu_tablas [0][$i];
print "</select>";
print "<tr>";
print "<td><input type=radio name=operacion value=Añadir>Añadir";
print "<td><input type=radio name=operacion value=Borrar>Borrar";
print "<td><input type=radio name=operacion value=Consultar>Consultar";
print "<td><input type=radio name=operacion value=Modificar>Modificar";
print "<tr>";
print "<td><input type=submit value=Enviar>";
print "</form>";
?>
</body>
</html>