Hola! Volví dsp de largo tiempo sobre este tema que aún no lo puedo hacer funcionar y a pesar que no me tira ningún error, no me muestra el resultado de la búsqueda dentro del div.
buscador.php
Código HTML:
Código HTML:
<form name="consulta" action="" onsubmit="MostrarConsulta('consulta.php'); return false">
...........
</form>
consulta.php
Código PHP:
include('conectar.php');
// declarar variables los datos del formulario
$id_tipopropiedad = $_GET['id_tipopropiedad'];
$id_operacion = $_GET['id_operacion'];
$select1 = $_GET['select1'];
$select2 = $_GET['select2'];
$id_moneda = $_GET['id_moneda'];
// declarar las condiciones usando la opción WHERE, dependiendo de lo enviado en el formulario
$condiciones = "";
if ($id_tipopropiedad != "") $condiciones .= " AND propiedades.id_tipopropiedad = $id_tipopropiedad";
if ($id_operacion != "" && $condiciones != "") $condiciones .= " AND propiedades.id_operacion = $id_operacion";
if ($select1 != "" && $condiciones != "") $condiciones .= " AND propiedades.id_localidad = $select1";
if ($select2 != "" && $condiciones != "") $condiciones .= " AND propiedades.id_zona = $select2";
if ($id_moneda != "" && $condiciones != "") $condiciones .= " AND propiedades.id_moneda = $id_moneda";
$RegistrosAMostrar=4;
//estos valores los recibo por GET
if(isset($_GET['pag'])){
$RegistrosAEmpezar=($_GET['pag']-1)*$RegistrosAMostrar;
$PagAct=$_GET['pag'];
//caso contrario los iniciamos
}else{
$RegistrosAEmpezar=0;
$PagAct=1;
}
$Resultado=mysql_query("SELECT * FROM propiedades ...... $condiciones ORDER BY id_propiedad LIMIT $RegistrosAEmpezar, $RegistrosAMostrar",$conexion);
echo "<table border='1px'>";
while($MostrarFila=mysql_fetch_array($Resultado)){
echo "<tr>";
echo "<td>".$MostrarFila['id_propiedad']."</td>";
echo "<td>".$MostrarFila['direccion']."</td>";
echo "<td>".$MostrarFila['foto']."</td>";
echo "</tr>";
}
echo "</table>";
//******--------determinar las páginas---------******//
$NroRegistros=mysql_num_rows(mysql_query("SELECT * FROM propiedades.... $condiciones ORDER BY id_propiedad",$conexion));
$PagAnt=$PagAct-1;
$PagSig=$PagAct+1;
$PagUlt=$NroRegistros/$RegistrosAMostrar;
//verificamos residuo para ver si llevará decimales
$Res=$NroRegistros%$RegistrosAMostrar;
// si hay residuo usamos funcion floor para que me
// devuelva la parte entera, SIN REDONDEAR, y le sumamos
// una unidad para obtener la ultima pagina
if($Res>0) $PagUlt=floor($PagUlt)+1;
//desplazamiento
echo "<a href='javascript:Pagina(1)'>Primero</a> ";
if($PagAct>1)
echo "<a href='javascript:Pagina(" . $PagAnt. ")'>Anterior</a> ";
echo "<strong>Pagina ".$PagAct."/".$PagUlt."</strong>";
if($PagAct<$PagUlt)
echo "<a href='javascript:Pagina(" .$PagSig. ")'>Siguiente</a> ";
echo "<a href='javascript:Pagina(" .$PagUlt. ")'>Ultimo</a>";
INDEX.PHP
Código:
// MOSTRAR RESULTADOS DE LA CONSULTA
function MostrarConsulta(datos){
divResultado = document.getElementById('resultado');
ajax=objetoAjax();
ajax.open("GET", "consulta.php?pag="+nropagina+"&id_tipopropiedad="+id_tipopropiedad+"&id_operacion="+id_operacion+"&select1="+select1+"&select2="+select2+"&id_moneda="+id_moneda);
ajax.onreadystatechange=function() {
if (ajax.readyState==4) {
divResultado.innerHTML = ajax.responseText
}
}
ajax.send(null)
}
// PAGINAR RESULTADOS
function Pagina(nropagina){
//donde se mostrará los registros
divContenido = document.getElementById('resultado');
ajax=objetoAjax();
//uso del medoto GET
//indicamos el archivo que realizará el proceso de paginar
//junto con un valor que representa el nro de pagina
ajax.open("GET", "consulta.php?pag="+nropagina);
divContenido.innerHTML= '<img src="anim.gif">';
ajax.onreadystatechange=function() {
if (ajax.readyState==4) {
//mostrar resultados en esta capa
divContenido.innerHTML = ajax.responseText
}
}
//como hacemos uso del metodo GET
//colocamos null ya que enviamos
//el valor por la url ?pag=nropagina
ajax.send(null)
}
<?php include('buscador.php')?>
<div id="resultado"></div>
Cuando presiono en BUSCAR no muestra los resultados dentro del div ni me tira ningún error.
¿Podrían decirme por favor si la parte de ajax está bien o no, o si me falta agregarle algo? ¿Podrían decirme qué estoy haciendo mal?
¿Está bien puesta a orden en el form como lo que escribí en el onSubmit?
Llevo tiempo con esto y me cuesta entenderlo, por eso les pido encarecidamente a los que saben si pueden darme una mano.
Aunque sea tonto o no lo crean, a quienes algunas cosas les parezca muy fácil, a otros nos cuesta.
Gracias nuevamente y saludos cordiales.
Marx.