Foros del Web » Programando para Internet » PHP »

PHP OO PHP Problemas de Paginacion en busqueda

Estas en el tema de PHP Problemas de Paginacion en busqueda en el foro de PHP en Foros del Web. Hola amigos soy nuevo en Foros del Web..tengo una duda... digamos estoy haciendo una paginacion de la base de datos ok , eso me sale ...
  #1 (permalink)  
Antiguo 21/12/2011, 11:21
 
Fecha de Ingreso: diciembre-2011
Mensajes: 6
Antigüedad: 12 años, 3 meses
Puntos: 0
PHP Problemas de Paginacion en busqueda

Hola amigos soy nuevo en Foros del Web..tengo una duda...
digamos estoy haciendo una paginacion de la base de datos ok , eso me sale pero digamos cuando quiero buscar especificamente un elemento en toda la base de datos y cuantas veces esta este. ¿Como paginarlo?...intento me da la cantidad de paginas enlaces que hay ..pero cuando doy click en el de #de enlace pagina ya no me tira nada... este es el codigo...

<html>
<head><title>Bienvenidos-Registar un cliente nuevo</title></head>
<body bgcolor="Gray" marginwidth="40" marginheight="40" topmargin="0" bottommargin="0" leftmargin="20" rightmargin="0">
<center><table border="0"><tr>
<td colspan="2"><img src="imagen.jpg" width="353" height="128"></td>
</tr>
<h1>Ingresar delegacion de pertenencia a buscar</h1>
<hr size="4" color="gray">
<table border="0" width="600">
<form action="cede2.php" method="post">
<tr><td>dp</td><td><input type="text" name="dp" maxlength="100"></td></tr>


<tr><td colspan="2"><center><input type="submit" name="enviar" value="dp a buscar"></td></tr>
</form></table>
<br><br><hr size="3" color="gray"><br><br>
<center><h2><a href="practica5.xhtml">Menú</a></h2></center>


//lo de arriba lo traigo con un isset , el name del text "dp" y tambien el boton name "enviar"

<?PHP
if(isset($_POST['enviar']))
{
$dato=$_POST['dp'];
//aqui va la conexion ...
$sql="Select * from $table where dp LIKE '$dato'";
$result=mysql_query($sql,$conexion);

$num_registros=mysql_num_rows($result);
if ($num_registros == 0)
{
echo "No se han encontrado elementos para mostrar";
mysql_close($conexion);
exit();
}
$registros=5;
$pagina=$_GET["num"];
if (IS_NUMERIC($pagina))
$inicio=(($pagina - 1)* $registros);
else
$inicio=0;
//$sql=mysql_query("Select * from $table where dp='$dato'");
$datos=mysql_query("Select * from $table where dp LIKE '$dato' LIMIT $inicio, $registros");
$paginas= ceil($num_registros / $registros);

echo "<center>";
if ($pagina>1)
echo "<a href='propia1.php?num=". ($pagina-1) ."'><font face='Verdana' size='3' color='Blue'>ANTERIOR</font></a> ";
for ($cont=1; $cont<=$paginas;$cont++)
{
if ($cont == $pagina)
echo $cont."<font size='10'>"." "."</font>";
else
echo "<a href='propia1.php?num=". $cont ."'>$cont</a> ";

}
if ($pagina<$paginas)
echo "<a href='propia1.php?num=". ($pagina+1) ."'><font face='Verdana' size='3' color='Blue'>SIGUIENTE</font></a> ";
echo "</center>";

bueno aqui solamente pongo la tabla donde se visualizan...
}
?>

ME DA LA CANTIDAD DE DATOS DIGAMOS SON 388 en total que encuentra con la consulta , Y LAS PAGINAS LAS DIVIDO EN 5 REGISTROS ME SALEN 78 PAGINAS DE ENLACE ...ESO SE VISUALIZA ..PERO CUANDO QUIERES VER ALGUNA DE LAS DEMAS PAGINAS QUE CONTIENEN LOS DEMAS REGISTROS ENCONTRADOS NO SALE..????...que podra ser...
  #2 (permalink)  
Antiguo 21/12/2011, 11:52
 
Fecha de Ingreso: julio-2010
Mensajes: 393
Antigüedad: 13 años, 8 meses
Puntos: 67
Respuesta: PHP Problemas de Paginacion en busqueda

Primero que nada.... para búsquedas, filtros y paginaciones lo más recomendable es usar el método GET y no POST.

luego, hechale un vistazo a esta clase para paginación php, toma los parámetros que ya tienes en la url y agrega los nuevos, de esa forma no pierdes tus filtros.
__________________
Páginas web de alta calidad y hechas a la medida.
  #3 (permalink)  
Antiguo 21/12/2011, 11:57
 
Fecha de Ingreso: diciembre-2011
Mensajes: 6
Antigüedad: 12 años, 3 meses
Puntos: 0
Respuesta: PHP Problemas de Paginacion en busqueda

ey gracias men probare con eso...te avisare si tengo problemas...

Etiquetas: html, mysql, paginacion, registro, sql, busquedas
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 02:22.