Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] problema de paginación en PHP

Estas en el tema de problema de paginación en PHP en el foro de PHP en Foros del Web. Buen día compañeros mi problema es el siguiente: Estoy realizando un sitio web de una inmobiliaria. Tengo un buscador que me muestra las casas según ...
  #1 (permalink)  
Antiguo 10/09/2014, 14:37
 
Fecha de Ingreso: septiembre-2014
Mensajes: 10
Antigüedad: 9 años, 6 meses
Puntos: 0
problema de paginación en PHP

Buen día compañeros mi problema es el siguiente:

Estoy realizando un sitio web de una inmobiliaria. Tengo un buscador que me muestra las casas según la ciudad a la que pertenecen. Le incluí el sistema de paginación y funciona muy bien, excepto por un detalle, en el cual quisiera me echaran una mano:

tengo 8 registros de prueba en mi base de datos, de los cuales 7 pertenecen a la ciudad llamada "abasolo" y 1 pertenece a la ciudad de "monterrey", ahora bien la paginación la tengo por defecto para que muestre 6 viviendas por página;

al realizar la búsqueda de las 7 viviendas de abasolo, en la primer página se muestran las primeras 6 viviendas de abasolo, hasta aquí todo bien, pero al ir a la segunda página, ya no me muestra la vivienda #7 de abasolo, sino que me muestra la vivienda #3 de abasolo y también me muestra la vivienda de monterrey.

Me podrían ayudar a solucionar este problema?

dejo el código del archivo donde hago las búsquedas y de la librería que utilizo para que se realice la paginación, muchas gracias a todos y que Dios les Bendiga y les Conserve la Salud.

nombre del archivo: busca_grand_nl.php
Código:
<section id="contenedor_buscador">
    	<aside id="izquierda">
			<h4>Buscar Propiedades de Nuevo Le&oacute;n</h4><br>
			<form name="form1" method="post" action="busca_grand_nl.php">
			<label>B&uacute;squeda por Colonia:</label>
			<input type="text" name="txtBusqueda" id="txtBusqueda">
			<label>Elija Municipio*:</label>
			<select name="selCiudad" id="selCiudad">
			<option value="-1" selected>Ver todas las Propiedades</option>
		<?php
			$tablaciudades = mysql_query("SELECT * FROM municipios_monterrey ORDER BY nombre_mun ASC"); // Seleccionamos las ciudades de la tabla ciudades
			while ($registrociudad = mysql_fetch_array($tablaciudades)) { // Vamos a repetir una Option (opcion), de la Lista Desplegable, por cada ciudad en la tabla
		?>
		<option value="<?php echo $registrociudad['id_mun']; ?>"><?php echo $registrociudad['nombre_mun']; ?></option>
		<?php
			} // termina la zona de repeticion
			mysql_free_result($tablaciudades); // se libera la memoria usada por la tabla
		?>
			</select>
			
			<input type="submit" name="cmdBuscar" id="cmdBuscar" value="&nbsp;Buscar&nbsp;">
			</form>
		
			<h5>Los campos marcados con (*) son obligatorios</h5>
		</aside>
		<article id="derecha">
		 <h2>Resultados de su b&uacute;squeda</h2>
		<?php
		$_pagi_sql = "SELECT propiedades.*, municipios_monterrey.* FROM propiedades, municipios_monterrey WHERE propiedades.id_mun = municipios_monterrey.id_mun ";
		if (isset($_POST['txtBusqueda'])) {
		$_pagi_sql .= " AND propiedades.colonia LIKE '%" . $_POST['txtBusqueda'] . "%' ";
		if (intval($_POST['selCiudad']) > 0) {
		$_pagi_sql .= " AND propiedades.id_mun = '" . intval($_POST['selCiudad']) . "'";
			}
		}
		$_pagi_sql .= " ORDER BY municipios_monterrey.nombre_mun ASC";
		//inicio de código para paginacion
		$_pagi_conteo_alternativo=true;
		$_pagi_cuantos = 6;
		include("paginator.inc.php");
		//fin de código para paginacion

		$tabla = mysql_query($_pagi_sql);

		/*de aqui hasta el "else{" es el codigo para poner el mensaje de "no se encontraron resultados y el "}" que cierra esta al final, despues de "mysql_close($conexion);".*/
		$num_filas=mysql_num_rows($tabla);
		if($num_filas==0){
			echo "<center>No se encontraron resultados para su b&uacute;squeda</center>";
		}
		else{ //inicio de código para paginacion aqui se cambio ($tabla)) por ($_pagi_result))
		while ($registro = mysql_fetch_array($_pagi_result)) 
		{
		?>

		<?php $id = $registro['id_dir'];?><!--En esta línea del código va entre corchetes el id de la tabla propiedades-->


		<div class="propiedades">	
			<img id="img_array"src="<?php echo $registro['imagen'];?>"/><br><br>
			<label>Direccion:<?php echo $registro['direccion']; ?></label><br>
			<label>Colonia:<?php echo $registro['colonia']; ?></label><br>
			<label>Municipio:<?php echo $registro['municipio']; ?></label><br>
			<label>Estado:<?php echo $registro['estado']; ?></label><br>
			<label>Estatus:<?php echo $registro['estatus']; ?></label><br>
			<img id="img_precio" src="../img/etiqueta_precio.png"/><label id="precio"><?php echo $registro['precio'];?></label><br>
			<a href="detalles.php?id_dir=<?php echo $id?>"><img id="img_llave" class="fade" src="../img/llave_detalle.png"/></a><label id="llave">Ver Detalles</label>	
		</div>					

		<?php		
		}
		?>
		<!--inicio de código para paginacion-->
		<?php echo"<br><div class='barra-navegacion'><p>".$_pagi_navegacion."</p></div>"; ?>
		<!--fin de código para paginacion-->
		<?php
		mysql_free_result($tabla);
		mysql_close($conexion);
		}
		?>
	
		</article>
	</section>
nombre del archivo: paginator.inc.php el sistema no me permite poner el código ya que es muy largo, pero aqui dejo el link de descarga del archivo:

http://www.desarrolloweb.com/articulos/ejemplos/paginator.inc.php.zip
  #2 (permalink)  
Antiguo 10/09/2014, 18:09
Avatar de Patriarka  
Fecha de Ingreso: enero-2011
Ubicación: Moreno, Buenos Aires, Argentina
Mensajes: 2.851
Antigüedad: 13 años, 2 meses
Puntos: 288
Respuesta: problema de paginación en PHP

lo unico que tenes que hacer es mantener los filtros cada vez que vaz paginando
  #3 (permalink)  
Antiguo 11/09/2014, 15:13
 
Fecha de Ingreso: septiembre-2014
Mensajes: 10
Antigüedad: 9 años, 6 meses
Puntos: 0
Respuesta: problema de paginación en PHP

Gracias por responder amigo Patriarka.

Sabes, lo que pasa es que soy novato en php, he conseguido hacer todo este código viendo manuales y preguntando. Me podrías dar un ejemplo de cómo hacerlo o recomendarme algún tutorial para darme una idea de cómo resolver este problemilla?

Desde ya muchas gracias por tu ayuda. Dios te Bendiga y te Conserve la Salud.
  #4 (permalink)  
Antiguo 25/09/2014, 12:39
 
Fecha de Ingreso: septiembre-2014
Mensajes: 10
Antigüedad: 9 años, 6 meses
Puntos: 0
Respuesta: problema de paginación en PHP

Doy por concluido el tema ya que yo mismo he encontrado la solución.

Por si le sirve a alguien:

En el código PHP sólo era cambiar $_POST por $_GET.

En el formulario HTML tambien cambiar method: POST por GET.

Saludos.

Etiquetas: html, mysql, registro, select, sql, tabla, usuarios, variable
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 00:46.