hola buenas noche en antiguos post hablaba un poco sobre comos dinamicos, es decir dependientes de otros combos......
consegui un script que fue de gran ayuda.. pero me presenta un ultimo error y quisiera saber si alguno de ustedes lo ve... El error q presenta que q no me esta tomando el registro por relacion de Id solo toma el orimero de la bd y deberia estar relacionado por su Id.. He aqui la primera parte del COdigo:
Código PHP:
<?php
include ('help.php');
$conexion=mysql_connect("localhost","root","123456")
or die("Problemas en la conexion");
$database= mysql_select_db("inv23",$conexion) or
die("Problemas en la seleccion de la base de datos");
mysql_select_db($database, $conexion);
$query_equipos = "SELECT id_tipoEquipo,descripcion FROM tipo_equipo";
$equipos = mysql_query($query_equipos, $conexion) or die(mysql_error());
$row_equipo = mysql_fetch_assoc($equipos);
$totalRows_equipos= mysql_num_rows($equipos);
mysql_select_db($database, $conexion);
$query_marcas = "SELECT id_marcas,marca FROM MARCA ORDER BY MARCA ASC";
$marcas = mysql_query($query_marcas, $conexion) or die(mysql_error());
$row_marcas = mysql_fetch_assoc($marcas);
$totalRows_marcas = mysql_num_rows($marcas);
mysql_select_db($database, $conexion);
$query_modelo = "SELECT id_modelo,modeloeq FROM MODELO";
$modelos = mysql_query($query_modelo, $conexion) or die(mysql_error());
$row_modelos = mysql_fetch_assoc($modelos);
$totalRows_modelo = mysql_num_rows($modelos);
?>
<select name="Actividades" onchange="javascript:cargarCombo('Subactividades.php', 'Actividades', 'div_modelo')" id="Actividades">
<?
$query = "SELECT ID_MARCAS, MARCA FROM marca";
$result=mysql_query($query);
$num=mysql_numrows($result);
mysql_close();
$i=0;
while ($i < $num) {
$Id = mysql_result($result,$i,"ID_MARCAS");
$Actividad = mysql_result($result,$i,"MARCA");
?>
<option value="select" selected="selected">Seleccion Marca</option>
<?php
do {
?>
<option value="<?php echo $Id['id_marcas']?>" ><?php echo $row_marcas['marca']?></option>
<?php
} while ($row_marcas = mysql_fetch_assoc($marcas));
?>
</select>
</td>
</tr>
<tr>
<td class="menu-sis">Modelo</td>
<td><div id="div_modelo">
<select name="SubActividades" id="SubActividades" class="select">
</select>
</div></td>
Archivo Help.js
Código Javascript
:
Ver original<script type="text/javascript">
var peticion = false;
var testPasado = false;
try {
peticion = new XMLHttpRequest();
} catch (trymicrosoft) {
try {
peticion = new ActiveXObject("Msxml2.XMLHTTP");
} catch (othermicrosoft) {
try {
peticion = new ActiveXObject("Microsoft.XMLHTTP");
} catch (failed) {
peticion = false;
}
}
}
if (!peticion)
alert("ERROR AL INICIALIZAR!");
function cargarCombo (url, comboAnterior, element_id) {
//Obtenemos el contenido del div
//donde se cargaran los resultados
var element = document.getElementById(element_id);
//Obtenemos el valor seleccionado del combo anterior
var valordepende = document.getElementById(comboAnterior)
var x = valordepende.value
//construimos la url definitiva
//pasando como parametro el valor seleccionado
var fragment_url = url+'?ID_MARCAS='+x;
element.innerHTML = '<img src="Imagenes/loading.gif" />';
//abrimos la url
peticion.open("GET", fragment_url);
peticion.onreadystatechange = function() {
if (peticion.readyState == 4) {
//escribimos la respuesta
element.innerHTML = peticion.responseText;
}
}
peticion.send(null);
}
</script>
Y por ultimo EL codigo del combo que deberia relacionar por Id.
Código PHP:
<?php
$conexion=mysql_connect("localhost","root","123456")
or die("Problemas en la conexion");
$database= mysql_select_db("inv23",$conexion) or
die("Problemas en la seleccion de la base de datos");
mysql_select_db($database, $conexion);
$query_modelo = "SELECT id_modelo,modeloeq FROM MODELO";
$modelos = mysql_query($query_modelo, $conexion) or die(mysql_error());
$row_modelos = mysql_fetch_assoc($modelos);
$totalRows_modelo = mysql_num_rows($modelos);
?>
<label for="SubActividad">SubActividad:</label>
<select name="SubActividades" id="SubActividades" class="select">
<?
$Idmarcas= $_REQUEST['ID_MARCAS'];
$query = "SELECT ID_MODELO, MODELOEQ, MARCAeq FROM modelo WHERE MARCAeq=$Idmarcas";
$result=mysql_query($query);
$num=mysql_numrows($result);
mysql_close();
$i=0;
while ($i < $num) {
$IdSubactividad = mysql_result($result,$i,"ID_MODELO");
$SubActividad = mysql_result($result,$i,"MODELOEQ");
?>
<option value="<?php echo $IdSubactividad['id_modelo']?>" ><?php echo $row_modelos['modeloeq']?></option>
<?
$i++;
}
?>
</select>
muchas gracias........ si pudiecn solventar mi problema.... Leo opciones