RE:Listas dependientes mysql
hola aqui te paso el script en javas. y mas abajo te puse los select
<script language="JavaScript" type="text/JavaScript">
<!--
function rellenaCombo(formulario)
{
with (document.forms[formulario]) // Establecemos por defecto el nombre formulario pasado para toda la función.
{
var centro = ciudad[ciudad.selectedIndex].value; // Valor seleccionado en el primer combo.
var n = comuna.length; // Numero de líneas del segundo combo.
comuna.disabled = false; // Activamos el segundo combo.
for (var i = 0; i < n; ++i)
comuna.remove(comuna.options[i]); // Eliminamos todas las líneas del segundo combo.
comuna[0] = new Option("Seleccione comuna", 'null'); // Creamos la primera línea del segundo combo.
if (centro != 'null') // Si el valor del primer combo es distinto de 'null'.
{
<?php
$cons_cen ="SELECT id,nombre FROM ciudad order by nombre asc";
$result011=mysql_query($cons_cen);
while($fila =mysql_fetch_array($result011))
{
$cen=$fila['id'];
?>
if (centro == '<?php echo $cen;?>')
{
<?php
// CODIGO PHP
// Construimos los valores del segundo combo con los empleados del centro.
$cons_emp = "SELECT comuna.id_comuna, comuna.NOMBRE
FROM (ciudad INNER JOIN ciudad_comuna ON ciudad.id = ciudad_comuna.id) INNER JOIN comuna ON ciudad_comuna.id_comuna = comuna.id_comuna
WHERE (((ciudad.id)=".$cen.")) order by comuna.NOMBRE asc";
$result0111=mysql_query($cons_emp);
while($fila =mysql_fetch_array($result0111))
{
$A=$fila['id_comuna'];
$B=$fila['NOMBRE'];
?>
comuna[comuna.length] = new Option("<?php echo $B;?>", '<?php echo $A;?>');
<?php
// CODIGO PHP
}
?>
}
<?php
// CODIGO PHP
}
?>
comuna.focus(); // Enviamos el foco al segundo combo.
}
else // El valor del primer combo es 'null'.
{
comuna.disabled = true; // Desactivamos el segundo combo (que estará vacío).
ciudad.focus(); // Enviamos el foco al primer combo.
}
comuna.selectedIndex = 0; // Seleccionamos el primer valor del segundo combo ('null').
}
}
------------------------------
combos
<select name="id_centro" size=26 onChange="rellenaCombo('form1');">
<option value="null" selected>Seleccione CATEGORIA
<?php
include("coneccion.php");
// CODIGO PHP
// Contruimos el primer combo con los valores de la tabla 'centros'.
$cons_centros ="SELECT codigo_categoria,nombre_categoria FROM v_categoria";
$result01=mysql_query($cons_centros);
while($fila =mysql_fetch_array($result01))
{
$id=$fila['codigo_categoria'];
$nombre=$fila['nombre_categoria'];
echo " <option value=$id>".$nombre."\n";
}
?>
</select>