Foros del Web » Programando para Internet » PHP »

Barra de navegacion de registros

Estas en el tema de Barra de navegacion de registros en el foro de PHP en Foros del Web. Hola que tal , tengo hecha una pagina de busqueda y otra de resultados y no se como hacer para poner en la pagina resultado ...
  #1 (permalink)  
Antiguo 23/09/2004, 09:12
 
Fecha de Ingreso: septiembre-2004
Mensajes: 30
Antigüedad: 13 años, 3 meses
Puntos: 0
Barra de navegacion de registros

Hola que tal , tengo hecha una pagina de busqueda y otra de resultados y no se como hacer para poner en la pagina resultado cuando alguien hace una busqueda una barra de navegacion de registros que diga ( Inicio , Siguiente , Anterior y Final ) para que puedan moverse entre los registros encontrados
si alguien me puede dar un ejemplo se los agradezco
  #2 (permalink)  
Antiguo 23/09/2004, 10:02
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Usa las técnicas de paginación que puedes ver en scripts como este:

Paginator (de Jpinedo) ..
http://jpinedo.webcindario.com/scrip...tor/index.html

Exactamente no se usa para "inicio, siguiente ..." sino para ofrecer páginas de resultados, pero si quieres, ajusta el paginado a 1 registro por página y más o menos conseguiras tu efecto. Lo más importante que ahí veras como hacer las consultas SQL básicas de este tema.


Un saludo,
  #3 (permalink)  
Antiguo 23/09/2004, 10:36
Avatar de ccca001  
Fecha de Ingreso: agosto-2004
Mensajes: 388
Antigüedad: 13 años, 3 meses
Puntos: 0
usa esta funcion... a mi me salio altiro...

function paginar($actual, $total, $por_pagina, $enlace) {
$total_paginas = ceil($total/$por_pagina);
$anterior = $actual - 1;
$posterior = $actual + 1;
if ($actual>1)
$texto = "<a href=\"$enlace$anterior\">&laquo;</a> ";
else
$texto = "<b>&laquo;</b> ";
for ($i=1; $i<$actual; $i++)
$texto .= "<a href=\"$enlace$i\">$i</a> ";
$texto .= "<b>$actual</b> ";
for ($i=$actual+1; $i<=$total_paginas; $i++)
$texto .= "<a href=\"$enlace$i\">$i</a> ";
if ($actual<$total_paginas)
$texto .= "<a href=\"$enlace$posterior\">&raquo;</a>";
else
$texto .= "<b>&raquo;</b>";
return $texto;
}
?>

la consulta:

$link = mysql_connect("tuhost", "tuusuario", "tuclave") or die ("no se ha podido conectar a la BD");
mysql_select_db("tubasededatos", $link) or die ("no se ha podido seleccionar la BD");
if (!isset($pag)) $pag = 1; // Por defecto, pagina 1
$result = mysql_query("SELECT COUNT(*) FROM tutabla ", $link);
list($total) = mysql_fetch_row($result);
$tampag = 5; // cantidad de resultados
$reg1 = ($pag-1) * $tampag;
$result = mysql_query("SELECT * FROM archivos order by fecha desc LIMIT $reg1, $tampag", $link);

y esto para el final de la pagina

echo paginar($pag, $total, $tampag, "tupagina.php?pag=");

y prueba...
__________________
"How do you define Real?"
  #4 (permalink)  
Antiguo 23/09/2004, 12:32
 
Fecha de Ingreso: septiembre-2004
Mensajes: 30
Antigüedad: 13 años, 3 meses
Puntos: 0
Gracias voy a probar a ver que tal me funciona
  #5 (permalink)  
Antiguo 23/09/2004, 13:06
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
kramces

Ojo con el SQL .. fijate que los ejemplos son para el SQL particular de Mysql .. revisa si es equivalente ese COUNT() y el LIMIT (con el orden de parámetros) para PostgreSQL.

Un saludo,
  #6 (permalink)  
Antiguo 23/09/2004, 13:45
Avatar de ccca001  
Fecha de Ingreso: agosto-2004
Mensajes: 388
Antigüedad: 13 años, 3 meses
Puntos: 0
tienes razon

esta funcion esta basada en base de datos mysql, habia olvidado advertirlo........
__________________
"How do you define Real?"
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.
Tema Cerrado




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