Foros del Web » Programando para Internet » PHP »

Paginar variable

Estas en el tema de Paginar variable en el foro de PHP en Foros del Web. Hola!! Se o creo que lo que dice el título es imposible, pero me explicaré: Tengo una página que sube fotos y otra que las ...
  #1 (permalink)  
Antiguo 05/06/2008, 13:09
(Desactivado)
 
Fecha de Ingreso: marzo-2008
Mensajes: 641
Antigüedad: 16 años, 1 mes
Puntos: 7
Pregunta Paginar variable

Hola!!

Se o creo que lo que dice el título es imposible, pero me explicaré:

Tengo una página que sube fotos y otra que las muestra, el problema es que no he querido guardar las fotos en mysql, he guardado la foto en el servidor y el nombre, descripción, etc, en mysql.

Así se muestran los resultados organizados:

Código PHP:
$nombres_sql=mysql_query("SELECT nombre FROM humorgrafico");

while (
$name=mysql_fetch_assoc($nombres_sql)){
$ch_name $name['nombre'];

$result=mysql_query("SELECT * FROM humorgrafico WHERE nombre='$ch_name'");
$campo=mysql_fetch_array($resultMYSQL_ASSOC);
$echo="<hr />" $campo['nombre'] . "<br />" "<img src='humorgrafico/$ch_name' />"
"<br />" "<br />" "Descripción: " $campo['descripcion'] . "<hr />" "<br />" "<br />" "<br />";
echo 
$echo;
}  
?> 
Pero quiero que solo se muestre una foto en la página, y aparezca una opción, siguiente, y otra, anterior, y al pulsar siguiente, se muestre la próxima foto.


¿Me he explicado?
  #2 (permalink)  
Antiguo 05/06/2008, 13:18
(Desactivado)
 
Fecha de Ingreso: marzo-2008
Mensajes: 641
Antigüedad: 16 años, 1 mes
Puntos: 7
Pregunta Respuesta: Paginar variable

Lo imposible se hizo realidad, con un script de jpinedo, pero el problema es que si tengo 3 fotos, la barra de navegación es así:


«« Primera | « Anterior | 1 | 2 | 3

Si tengo 1000, ¿cómo sería la barra de navegación?

¿Qué hago para que me muestre como en google, 10 números entre anterior y siguiente, aunque haya 5666766 fotos.


¿Dejo el script de jpinedo?

aquí está el link:

http://jpinedo.webcindario.com/
  #3 (permalink)  
Antiguo 11/06/2008, 07:39
(Desactivado)
 
Fecha de Ingreso: marzo-2008
Mensajes: 641
Antigüedad: 16 años, 1 mes
Puntos: 7
Exclamación Respuesta: Paginar variable

Me explico?

Tengo 12 registros, y quiero que al paginar los resultados, muestre uno por página:

«« Primera | « Anterior | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | Siguiente » | Última »»

¿Cómo sería la barra de navegación si tengo 1000 registros...

Dejo el script (bueno la parte de la barra de navegación, a ver si me ayudan)

Código PHP:
Generación de los enlaces de paginación.
 *------------------------------------------------------------------------
 */
 
// La variable $_pagi_navegacion contendrá los enlaces a las páginas.
 
$_pagi_navegacion_temporal = array();
 if (
$_pagi_actual != 1){
    
// Si no estamos en la página 1. Ponemos el enlace "primera"
    
$_pagi_url 1//será el número de página al que enlazamos
    
$_pagi_navegacion_temporal[] = "<a ".$_pagi_nav_estilo_mod." href='".$_pagi_enlace."_pagi_pg=".$_pagi_url."'>$_pagi_nav_primera</a>";

    
// Si no estamos en la página 1. Ponemos el enlace "anterior"
    
$_pagi_url $_pagi_actual 1//será el número de página al que enlazamos
    
$_pagi_navegacion_temporal[] = "<a ".$_pagi_nav_estilo_mod." href='".$_pagi_enlace."_pagi_pg=".$_pagi_url."'>$_pagi_nav_anterior</a>";
 }
 
 
// La variable $_pagi_nav_num_enlaces sirve para definir cuántos enlaces con 
 // números de página se mostrarán como máximo.
 // Ojo: siempre se mostrará un número impar de enlaces. Más info en la documentación.
 
 
if(!isset($_pagi_nav_num_enlaces)){
    
// Si no se definió la variable $_pagi_nav_num_enlaces
    // Se asume que se mostrarán todos los números de página en los enlaces.
    
$_pagi_nav_desde 1;//Desde la primera
    
$_pagi_nav_hasta $_pagi_totalPags;//hasta la última
 
}else{
    
// Si se definió la variable $_pagi_nav_num_enlaces
    // Calculamos el intervalo para restar y sumar a partir de la página actual
    
$_pagi_nav_intervalo ceil($_pagi_nav_num_enlaces/2) - 1;
    
    
// Calculamos desde qué número de página se mostrará
    
$_pagi_nav_desde $_pagi_actual $_pagi_nav_intervalo;
    
// Calculamos hasta qué número de página se mostrará
    
$_pagi_nav_hasta $_pagi_actual $_pagi_nav_intervalo;
    
    
// Ajustamos los valores anteriores en caso sean resultados no válidos
    
    // Si $_pagi_nav_desde es un número negativo
    
if($_pagi_nav_desde 1){
        
// Le sumamos la cantidad sobrante al final para mantener el número de enlaces que se quiere mostrar. 
        
$_pagi_nav_hasta -= ($_pagi_nav_desde 1);
        
// Establecemos $_pagi_nav_desde como 1.
        
$_pagi_nav_desde 1;
    }
    
// Si $_pagi_nav_hasta es un número mayor que el total de páginas
    
if($_pagi_nav_hasta $_pagi_totalPags){
        
// Le restamos la cantidad excedida al comienzo para mantener el número de enlaces que se quiere mostrar.
        
$_pagi_nav_desde -= ($_pagi_nav_hasta $_pagi_totalPags);
        
// Establecemos $_pagi_nav_hasta como el total de páginas.
        
$_pagi_nav_hasta $_pagi_totalPags;
        
// Hacemos el último ajuste verificando que al cambiar $_pagi_nav_desde no haya quedado con un valor no válido.
        
if($_pagi_nav_desde 1){
            
$_pagi_nav_desde 1;
        }
    }
 }

 for (
$_pagi_i $_pagi_nav_desde$_pagi_i<=$_pagi_nav_hasta$_pagi_i++){//Desde página 1 hasta última página ($_pagi_totalPags)
    
if ($_pagi_i == $_pagi_actual) {
        
// Si el número de página es la actual ($_pagi_actual). Se escribe el número, pero sin enlace y en negrita.
        
$_pagi_navegacion_temporal[] = "<span ".$_pagi_nav_estilo_mod.">$_pagi_i</span>";
    }else{
        
// Si es cualquier otro. Se escibe el enlace a dicho número de página.
        
$_pagi_navegacion_temporal[] = "<a ".$_pagi_nav_estilo_mod." href='".$_pagi_enlace."_pagi_pg=".$_pagi_i."'>".$_pagi_i."</a>";
    }
 }

 if (
$_pagi_actual $_pagi_totalPags){
    
// Si no estamos en la última página. Ponemos el enlace "Siguiente"
    
$_pagi_url $_pagi_actual 1//será el número de página al que enlazamos
    
$_pagi_navegacion_temporal[] = "<a ".$_pagi_nav_estilo_mod." href='".$_pagi_enlace."_pagi_pg=".$_pagi_url."'>$_pagi_nav_siguiente</a>";

    
// Si no estamos en la última página. Ponemos el enlace "Última"
    
$_pagi_url $_pagi_totalPags//será el número de página al que enlazamos
    
$_pagi_navegacion_temporal[] = "<a ".$_pagi_nav_estilo_mod." href='".$_pagi_enlace."_pagi_pg=".$_pagi_url."'>$_pagi_nav_ultima</a>";
 }
 
$_pagi_navegacion implode($_pagi_separador$_pagi_navegacion_temporal);

//------------------------------------------------------- 

Gracias de antemano
  #4 (permalink)  
Antiguo 11/06/2008, 07:47
(Desactivado)
 
Fecha de Ingreso: marzo-2008
Mensajes: 641
Antigüedad: 16 años, 1 mes
Puntos: 7
Información Respuesta: Paginar variable

Ya lo he descubierto

ERa modificando una variable ($_pagi_nav_num_enlaces = X;)

Perdón a los administradores del foro por crear un tema inservible.


Última edición por yonolose; 12/06/2008 a las 07:29 Razón: PERDóN
  #5 (permalink)  
Antiguo 11/06/2008, 07:47
Avatar de jaronu  
Fecha de Ingreso: febrero-2008
Mensajes: 2.183
Antigüedad: 16 años, 2 meses
Puntos: 52
Respuesta: Paginar variable

lee bien la documentacion del PAGINATOR

tienes esta opcion

Código PHP:
//cantidad de enlaces que se mostrarán como máximo en la barra de navegación
$_pagi_nav_num_enlaces 3;//Elegí un número pequeño para que se note el resultado 
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 04:37.