buenas, lei un articulo en aqui donde relacionaban 2 o mas combos y msql en esta direccion [URL="http://www.forosdelweb.com/f18/combobox-dinamicos-php-2-mas-combos-anidados-575482/"][/URL] http://www.forosdelweb.com/f18/combobox-dinamicos-php-2-mas-combos-anidados-575482/ lo probe y funciona, lo que estoy intentando hacer es modificar el codigo para un trabajo, en el ejemplo todos los combos deben tener datos, en mi caso uno de los combos puede no tener datos y seguir funcionando. Las tablas con las que trabajo son:
Tabla categorias
id_cat
nom_cat
Tabla subcategorias
id_subcat
id_cat
nom_subcat
Tabla productos
id_prod
id_cat
id_subcat
nom_prod
Lo que necesito es que al seleccionar una categoria esta puede o no tener una subcategoria si tiene la misma que muestre el producto (categoria - subcategoria y producto) y si no la tiene que directamente me muestre el producto (categoria - producto). A continuacion adjunto el codigo, espero puedan ayudarme.
Código PHP:
Ver original<?php include("mysql.php");
//$consulta_pais = $db->consulta("SELECT * FROM categorias");
$consulta_categoria = $db->consulta("SELECT * FROM categorias");
echo '<html>';
echo '<form method="post" action="combobox2.php">';
//$pais=$_POST['pais'];
$nom_cat=$_POST['nom_cat'];
//$departamentos=$_POST['departamentos'];
$nom_subcat1=$_POST['nom_subcat1'];
//$distrito=$_POST['distrito'];
$nom_prod=$_POST['nom_prod'];
echo '<select name="nom_cat" onChange="submit()" style="position:absolute;left:14px;top:5px;width:186px;font-family:Times New Roman;font-size:16px;z-index:0">';
if ($db->num_rows($consulta_categoria)>0){
echo "<option value= '$nom_cat'>".$nom_cat.'</option>';
while ($resultado=$db->fetch_array($consulta_categoria)){ echo '<option value= "'.$resultado['nom_cat'].'">'.$resultado['nom_cat'].'</option>';
}
}
echo '</select>';
echo '<br>';
$consulta_cod_categoria = $db->consulta("SELECT id_cat FROM categorias WHERE nom_cat='$nom_cat'");
$resultado_cod_categoria=$db->fetch_array($consulta_cod_categoria);
$cod_categoria=$resultado_cod_categoria['id_cat'];
$consulta_subcategoria = $db->consulta("SELECT * FROM subcategorias where id_cat='$cod_categoria'");
echo '<select name="nom_subcat1" onChange="submit()" style="position:absolute;left:14px;top:35px;width:186px;font-family:Times New Roman;font-size:16px;z-index:1">';
if ($db->num_rows($consulta_subcategoria)>0){
echo "<option value= '$nom_subcat1'>".$nom_subcat1.'</option>';
echo "<script type=\"text/javascript\">alert(\"consulta subcat: $nom_subcat1\");</script>";
while ($resultado=$db->fetch_array($consulta_subcategoria)){ echo '<option value= "'.$resultado['nom_subcat'].'">'.$resultado['nom_subcat'].'</option>';
}
}else{
//if ($db->num_rows($consulta_subcategoria)==0){
echo "<option value= '$sd'>Sin Datos</option>";
//while ($resultado=$db->fetch_array($consulta_subcategoria)){ echo '<option value= "'.$resultado['sd'].'">'.$sd.'</option>';
//}echo $resultado['sd']; echo $sd;
}
echo '</select>';
echo '<br>';
if ($sd="Sin Datos"){
$consulta_cod_nom_prod = $db->consulta("SELECT id_cat FROM categorias WHERE nom_cat='$nom_cat'");
$resultado_cod_nom_prod=$db->fetch_array($consulta_cod_nom_prod);
$cod_nom_prod=$resultado_cod_nom_prod['id_cat'];
$consulta_nom_prod = $db->consulta("SELECT * FROM productos where id_cat='$cod_nom_prod'");
}else{
$consulta_cod_nom_subcat = $db->consulta("SELECT id_subcat FROM subcategorias WHERE nom_subcat='$nom_subcat1'");
$resultado_cod_nom_subcat=$db->fetch_array($consulta_cod_nom_subcat);
$cod_nom_subcat=$resultado_cod_nom_subcat['id_subcat'];
$consulta_nom_prod = $db->consulta("SELECT * FROM productos where id_subcat='$cod_nom_subcat'");
}
echo '<select name="nom_prod" onChange="submit()"style="position:absolute;left:14px;top:65px;width:186px;font-family:Times New Roman;font-size:16px;z-index:2">';
if ($db->num_rows($consulta_nom_prod)>0){
echo "<option value= '$nom_prod'>".$nom_prod.'</option>';
while ($resultado=$db->fetch_array($consulta_nom_prod)){ echo '<option value= "'.$resultado['nom_prod'].'">'.$resultado['nom_prod'].'</option>';
}
}else{
//if ($db->num_rows($consulta_nom_prod)==0){
echo "<option value= '$sd'>Sin Datos</option>";
//while ($resultado=$db->fetch_array($consulta_subcategoria)){ echo '<option value= "'.$resultado['sd'].'">'.$sd.'</option>';
//}echo $resultado['sd']; echo $sd;
}
echo '</select>';
echo '</html>';
echo '</form>';
?>