Hola soy nueva en esto y apreciaría mucho su ayuda. tengo creados unos selects dependientes toman la información de una base de datos. y estoy tratando de hacer que según el combo seleccionado me muestre toda la información de las tablas que trae.
los combos me funcionan super bien pero no puedo mostrar los datos me sale " busqueda sin resultados " tabla espero puedan ayudarme este es mi codigo:
<?phprequire_once "config.inc.php";function combo($db,$nombre,$valor,$tabla,$campos,$condicion,$orden,$modo,$espadre){$query = "SELECT ".$campos." from ".$tabla." order by ".$orden." ".$modo;$consulta=$db->query($query);if ($hayregistros=$consulta->fetch_array()){echo "<select name='".$nombre."' id='".$nombre."'>";if ($espadre==1){echo "<option value=''>Selecciona...</option>";do{echo "<option value='".$hayregistros[0]."'";if ($hayregistros[0]==$valor) echo " selected";echo ">".$hayregistros[1]."</option>\r\n";}while ($hayregistros=$consulta->fetch_array());}echo "</select>";}}?>
<script type="text/javascript">
function llamada(combo,tabla,campos,referencia,valor,seleccionada)
{
$(combo).empty().append("<option value=''>Cargando...</option>");
$.ajax({
dataType: "json",
type: "GET",
url: "combobox.php",
data: { tabla:tabla,campos:campos,referencia: referencia, valor: valor }
})
.done(function(json) {
$(combo).empty().append("<option value=''>Selecciona...</option>");
$.each(json, function (i, items) {
if(items !== null) if (items["id"]==seleccionada) $("<option>").appendTo(combo).val(items["id"]).text(items["label"]).attr("selected","selected");
else if(items !== null) $("<option>").appendTo(combo).val(items["id"]).text(items["label"]);
});
});
}
$(document).ready(function()
{
/* COMBOBOX */
$(".combobox select:not(#idnieto)").change(function()
{
var idpadre = $("#idpadre").find(':selected').val();
var idhijo = $("#idhijo").find(':selected').val();
if (idpadre!="")
{
/* combo al hijo */
llamada("#idhijo","hijo","idhijo,hijo","idpadre",idpadre,idhijo);
llamada("#idnieto","nieto","idnieto,nieto","idhijo",idhijo,"");
}
});
});
</script>
<style>
select{padding:10px;border:1px solid #bbb;border-radius:5px;margin:5px 0;display:block;box-shadow:0 0 10px #ddd;width:50%}
</style>
</head>
<body>
<div class="label"><h1>Bienvenido </h1></div>
<p>
</p>
<div class="row">
<div class="col-md-4"></div>
<div class="col-md-4" align="center">
<form method="post" action="<?php echo $_SERVER["PHP_SELF"]; ?>
" class="combobox">
<fieldset>
<p><label>Estado</label><?php combo($db,"idpadre","","padre","idpadre,padre",1,"padre","asc",1); ?>
</p>
<p id="combo_1"><label>Municipio</label><?php combo($db,"idhijo","","hijo","idhijo,hijo",1,"hijo","asc",0); ?>
</p>
<p id="combo_2"> <label>Especialidad</label><?php combo($db,"idnieto","","nieto","idnieto,nieto",1,"nieto","asc",0); ?>
</p>
<p> </p>
<input type="submit" class="btn btn-ar btn-success" name="buscardor" value="Mostrar resultados">
</fieldset>
</form>
<?php$texto = '';//Variable que contendrá el número de resgistros encontrados$registros = '';if($_POST){//---------- > creo que aqui es donde esta el error <------------$busqueda = trim($_POST['combo_2']);$entero = 0;if (empty($busqueda)){$texto = 'Búsqueda sin resultados';}else{// Si hay información para buscar, abrimos la conexiónconectar();mysql_set_charset('utf8'); // mostramos la información en utf-8//Contulta para la base de datos, se utiliza un comparador LIKE para acceder a todo lo que contenga la cadena a buscar$sql = "SELECT * FROM nieto WHERE nieto LIKE '%" .$busqueda. "%' ORDER BY idnieto";$resultado = mysql_query($sql); //Ejecución de la consulta//Si hay resultados...if (mysql_num_rows($resultado) > 0){ // Se recoge el número de resultados$registros = '<p>Se encontarron ' . mysql_num_rows($resultado) . ' Socio(s) </p>';// Se almacenan las cadenas de resultadowhile($fila = mysql_fetch_assoc($resultado)){ echo' <div class="table-responsive"><table class="table table-hover"><thead><tr><th>No. Tarjeta</th><th>Usuario</th><th>Nombre</th><th>Email</th><th>Teléfono</th><th>Dirección</th><th>Tipo de tarjeta</th></tr></thead><tbody><tr><td>'. $fila['name'] .'</td><td>'. $fila['lastname'] .'</td><td>'. $fila['dir'] .'</td><td>'. $fila['colonia'] .'</td><td>'. $fila['tel1'] .'</td><td>'. $fila['tel2'] .'</td><td>'. $fila['cel'] .'</td></tr> </tbody></table></div></table> <br>';}}else{$texto = "NO se ha encontrado ningun resultado"; }// Cerramos la conexión (por seguridad, no dejar conexiones abiertas)mysql_close($conexion);}}?>
<?php // Resultado, número de registros y contenido.echo $registros;echo $texto; ?>