Tengo un archivo buscador.php con un formulario el cual pasa el idtipopropiedad por GET, que en este caso es 1.
La página search.php recoge el ID y lo utiliza para buscar los resultados en la BDD.
La página search.php me muestra de a 4 los resultados por página y en este caso, el paginador me dice que hay 3 páginas con el idtipopropiedad solicitado pero me di cuenta que solo puedo cambiar 1 sola vez de página porque después, el idtipopropiedad que debería aparecer en el link, ya no aparece.
El resultado me aparece linkeado así:
http://search.php?pag=2&idtipopropiedad=1
Al seleccionarlo me aparecen perfectos los resultados, pero si quiero voilver atrás, el link me aparece de esta forma:
http://search.php?pag=1&idtipopropiedad=
Les paso las consultas y los códigos que tengo:
search.php
Código PHP:
if(isset($_GET['searchprop']))
// declarar variables los datos del formulario
$idtipopropiedad = $_GET['id_tipopropiedad'];
$condiciones = "";
if ($idtipopropiedad != "") $condiciones .= " AND propiedades.id_tipopropiedad = $idtipopropiedad";
$pag = $_GET['pag'];
if (!isset($pag)) $pag = 1; // Por defecto, pagina 1
$sql = "SELECT COUNT(*) FROM propiedades WHERE propiedades.id_tipopropiedad = tipopropiedad.id_tipopropiedad $condiciones ORDER BY id_propiedad";
$result = mysql_query($sql, $conexion);
list($total) = mysql_fetch_row($result);
$tampag = 4;
$reg1 = ($pag-1) * $tampag;
$result = mysql_query("SELECT * FROM propiedades WHERE propiedades.id_tipopropiedad = tipopropiedad.id_tipopropiedad $condiciones ORDER BY id_propiedad LIMIT $reg1, $tampag", $conexion) or die (mysql_error());
// Acá me muestra los resultados...
// Paginador
function paginar($actual, $total, $por_pagina, $enlace) {
$pag = $_GET['pag'];
$idtipopropiedad = "&idtipopropiedad=". $_GET['id_tipopropiedad'];
$total_paginas = ceil($total/$por_pagina);
$anterior = $actual - 1;
$posterior = $actual + 1;
if ($actual>1)
$texto = "<a href=\"$enlace$anterior$idtipopropiedad\" > ANTERIOR</a> ";
else
$texto = "<b>ANTERIOR</b> ";
for ($i=1; $i<$actual; $i++)
$texto .= "<a href=\"$enlace$i$idtipopropiedad\" >$i</a> ";
$texto .= "<b>$actual</b> ";
for ($i=$actual+1; $i<=$total_paginas; $i++)
$texto .= "<a href=\"$enlace$i$idtipopropiedad\" >$i</a> ";
if ($actual<$total_paginas)
$texto .= "<a href=\"$enlace$posterior$idtipopropiedad\" >SIGUIENTE </a>";
else
$texto .= "<b>SIGUIENTE</b>";
return $texto;
// Cierro la conexion
mysql_close($conexion);
}
echo paginar($pag, $total, $tampag, "prop-search.php?pag=");
Muchas gracias a todos y salutes.
Marx.