Foros del Web » Programando para Internet » PHP »

paginacion en web modular

Estas en el tema de paginacion en web modular en el foro de PHP en Foros del Web. hola amigos hace dias que llevo tratando de paginar los resultado de una consulta en una web modular, el ejemplo que estoy siguiendo es el ...
  #1 (permalink)  
Antiguo 17/07/2011, 16:14
 
Fecha de Ingreso: junio-2011
Ubicación: Mexico
Mensajes: 23
Antigüedad: 13 años, 5 meses
Puntos: 1
paginacion en web modular

hola amigos hace dias que llevo tratando de paginar los resultado de una consulta en una web modular, el ejemplo que estoy siguiendo es el que esta de zonaphp, la paginacion la implemente de un libro que consegui pero la verdad no logro conseguir que me haga la paginacion me muestra los resultados pero no la apginacion es decir tengo 15 registros y solo me muestra los primeros 3 cuando quiero pasarme al siguiente linck no funciona pongo el codigo haber si me pueden echar una manita.

este es el config.
[PHP]
define('MODULO_DEFECTO', 'home');
define('LAYOUT_DEFECTO', 'layout_simple.php');
define('MODULO_PATH', realpath('./modulos/'));
define('LAYOUT_PATH', realpath('./layouts/'));

$conf['home'] = array(
'archivo' => 'home.php',
'layout' => LAYOUT_DEFECTO );
$conf['articulo'] = array(
'archivo' => 'art.php' );
$conf['Quienes Somos'] = array(
'archivo' => 'quienes_somos.php' );
$conf['Contacto'] = array(
'archivo' => 'aspemail_txt.asp' );
$conf['Casas'] = array(
'archivo' => 'buscador.php' ); //aqui llamo al php que hace la funcion de paginacion
$conf['imp_art'] = array(
'archivo' => $conf['articulo']['archivo'],
'layout' => 'imprimir.php' );
?>[PHP]


aqui el index.

[PHP]<?php
error_reporting(E_ALL);
include('conf.php');
if (!empty($_GET['seccion']))
$modulo = $_GET['seccion'];
else
$modulo = MODULO_DEFECTO;

if (empty($conf[$modulo]))
$modulo = MODULO_DEFECTO;


if (empty($conf[$modulo]['layout']))
$conf[$modulo]['layout'] = LAYOUT_DEFECTO;

$path_layout = LAYOUT_PATH.'/'.$conf[$modulo]['layout'];
$path_modulo = MODULO_PATH.'/'.$conf[$modulo]['archivo'];

if (file_exists($path_layout))
include( $path_layout );
else
if (file_exists( $path_modulo )){
include( $path_modulo );
}
else
{
die('Error al cargar el módulo <b>'.$modulo.'</b>. No existe el archivo <b>'.$conf[$modulo]['archivo'].'</b>');
}
?>[PHP]

y aqui el codigo de paginacion me imagino que el problema esta cuando imprimo los link.
Código PHP:
<?php
require('/modulos/includes/conexion.php');
 
$RegistrosAMostrar=3;

 
//estos valores los recibo por GET
 
if(isset($_GET['pag'])){
  
$RegistrosAEmpezar=($_GET['pag']-1)*$RegistrosAMostrar;
  
$PagAct=$_GET['pag'];
  
//caso contrario los iniciamos
 
}else{
  
$RegistrosAEmpezar=0;
  
$PagAct=1;
 }

 
$Resultado=mysql_query("SELECT * FROM propiedades LIMIT $RegistrosAEmpezar, $RegistrosAMostrar",$conexion);
 echo 
"<table border='1px'>";
 while(
$MostrarFila=mysql_fetch_array($Resultado)){
  echo 
"<tr>";
    echo (
"<TD><img src=\"imagenes/" $MostrarFila['fotoprincipal'] . "\"  width='200' height='171' border='1' align='left'/></TD>\n");
  echo 
"<td>".$MostrarFila['Titulo']."</td>";
  echo 
"<td>".$MostrarFila['descripcion']."</td>"
  echo 
"</tr>";
 }
 echo 
"</table>";

 
//******--------cuento cuantas paginas---------******//
 
$NroRegistros=mysql_num_rows(mysql_query("SELECT * FROM propiedades",$conexion));
 
$PagAnt=$PagAct-1;
 
$PagSig=$PagAct+1;
 
$PagUlt=$NroRegistros/$RegistrosAMostrar;

 
//veo si lleva residuo
 
$Res=$NroRegistros%$RegistrosAMostrar;
 
// si hay residuo usamos funcion floor para que me
 // devuelva la parte entera, SIN REDONDEAR, y le sumamos
 // una unidad para obtener la ultima pagina
 
if($Res>0$PagUlt=floor($PagUlt)+1;
 
 
//desplazamiento[B]
 
echo "<a onclick=\"Pagina('1')\">Primero</a> ";
 if(
$PagAct>1) echo "<a onclick=\"Pagina('$PagAnt')\">Anterior</a> ";
 echo 
"<strong>Pagina ".$PagAct."/".$PagUlt."</strong>";
 if(
$PagAct<$PagUlt)  echo " <a onclick=\"Pagina('$PagSig')\">Siguiente</a> ";
 echo 
"<a onclick=\"Pagina('$PagUlt')\">Ultimo</a>";[/B]
?>
creo el problema esta cuando ponlo los link de desplazamiento.
  #2 (permalink)  
Antiguo 17/07/2011, 18:29
Avatar de duskrow  
Fecha de Ingreso: abril-2008
Mensajes: 267
Antigüedad: 16 años, 7 meses
Puntos: 8
Respuesta: paginacion en web modular

en si en general cual es el error ?
__________________
"El sabio no dice lo que piensa,pero piensa lo que dice"
Att Miguel Lomeli
Visita mi Blog
  #3 (permalink)  
Antiguo 17/07/2011, 21:01
 
Fecha de Ingreso: junio-2011
Ubicación: Mexico
Mensajes: 23
Antigüedad: 13 años, 5 meses
Puntos: 1
Respuesta: paginacion en web modular

el problema radica en que no se activan los links de la pagina 2


Código PHP:
echo "<a onclick=\"Pagina('1')\">Primero</a> ";
 if(
$PagAct>1) echo "<a onclick=\"Pagina('$PagAnt')\">Anterior</a> ";
 echo 
"<strong>Pagina ".$PagAct."/".$PagUlt."</strong>";
 if(
$PagAct<$PagUlt)  echo " <a onclick=\"Pagina('$PagSig')\">Siguiente</a> ";
 echo 
"<a onclick=\"Pagina('$PagUlt')\">Ultimo</a>"
creo que debria quedar algo asi:


Código PHP:
 echo "<a onclick=\"index.php?seccion=busqueda&Pagina('1')\">Primero</a> ";
 if(
$PagAct>1) echo "<a onclick=\"index.php?seccion=busqueda&Pagina('$PagAnt')\">Anterior</a> ";
 echo 
"<strong>Pagina ".$PagAct."/".$PagUlt."</strong>";
 if(
$PagAct<$PagUlt)  echo " <a onclick=\"index.php?seccion=busqueda&Pagina('$PagSig')\">Siguiente</a> ";
 echo 
"<a onclick=\"index.php?seccion=busqueda&Pagina('$PagUlt')\">Ultimo</a>"
pero no puedo hacer que funcione
  #4 (permalink)  
Antiguo 18/07/2011, 20:12
 
Fecha de Ingreso: junio-2011
Ubicación: Mexico
Mensajes: 23
Antigüedad: 13 años, 5 meses
Puntos: 1
Respuesta: paginacion en web modular

ok bueno alguna opcion para paginar en una web modular de antemano muchas gracias
  #5 (permalink)  
Antiguo 19/07/2011, 07:23
 
Fecha de Ingreso: junio-2011
Ubicación: Mexico
Mensajes: 23
Antigüedad: 13 años, 5 meses
Puntos: 1
seguimiento a paginacion modular

hola no le logrado conseguir paginar los resultados de una consulta en una web modular8para la web modular ocupe el manual de zona php) y para la paginacion un ejemplo de ajax (tomado de ribosomatic), pero la verdad no logro hacer que me funcionen los links de la paginacion pongo el codigo

config:
Código PHP:
<?php
/*
 * Archivo de configuración para nuestra aplicación modularizada.
 * Definimos valores por defecto y datos para cada uno de nuestros módulos.
*/
define('MODULO_DEFECTO''home');
define('LAYOUT_DEFECTO''layout_simple.php');
define('MODULO_PATH'realpath('./modulos/'));
define('LAYOUT_PATH'realpath('./layouts/'));

$conf['home'] = array(
        
'archivo' => 'home.php',
        
'layout' => LAYOUT_DEFECTO ); 
$conf['articulo'] = array(
        
'archivo' => 'art.php' );
$conf['Quienes Somos'] = array(
        
'archivo' => 'quienes_somos.php' );    
$conf['Contacto'] = array(
        
'archivo' => 'aspemail_txt.asp' );
$conf['Casas'] = array(
        
'archivo' => 'paginador.php' );    // aqui llamo a la pagina para mostrar los resultados                            
$conf['imp_art'] = array(
        
'archivo' => $conf['articulo']['archivo'],
        
'layout' => 'imprimir.php' );

index:[PHP]<?php
error_reporting
(E_ALL);
// Primero incluimos el archivo de configuración
include('conf.php');
if (!empty(
$_GET['pag']))
    
$modulo $_GET['pag'];
else
    
$modulo MODULO_DEFECTO;

if (empty(
$conf[$modulo]))
        
$modulo MODULO_DEFECTO;

if (empty(
$conf[$modulo]['layout']))
        
$conf[$modulo]['layout'] = LAYOUT_DEFECTO;

$path_layout LAYOUT_PATH.'/'.$conf[$modulo]['layout'];
$path_modulo MODULO_PATH.'/'.$conf[$modulo]['archivo'];

if (
file_exists($path_layout))
    include( 
$path_layout );
else
    if (
file_exists$path_modulo )){
        include( 
$path_modulo );
        }
    else
        {
        die(
'Error al cargar el módulo <b>'.$modulo.'</b>. No existe el archivo <b>'.$conf[$modulo]['archivo'].'</b>');
        }
?>
y aqui el archivo de paginacion
Código PHP:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Documento sin t&iacute;tulo</title>
<script type="text/javascript" src="../includes/ajax.js"></script>
<style>
td{width=200px;}
a{text-devoration:underline;
cursor:pointer;}
</style>
</head>
<body>
<p>Propiedades a Disposici&oacute;n.</p>
<?php
require('/modulos/includes/conexion.php');
 
$RegistrosAMostrar=3;

 
//estos valores los recibo por GET
 
if(isset($_GET['pagina'])){
  
$RegistrosAEmpezar=($_GET['pagina']-1)*$RegistrosAMostrar;
  
$PagAct=$_GET['pag'];
  
//caso contrario los iniciamos
 
}else{
  
$RegistrosAEmpezar=0;
  
$PagAct=1;
 }

 
$Resultado=mysql_query("SELECT * FROM propiedades LIMIT $RegistrosAEmpezar, $RegistrosAMostrar",$conexion);
 echo 
"<table border='1px'>";
 while(
$MostrarFila=mysql_fetch_array($Resultado)){
  echo 
"<tr>";
    echo (
"<TD><img src=\"imagenes/" $MostrarFila['fotoprincipal'] . "\"  width='200' height='171' border='1' align='left'/></TD>\n");
  echo 
"<td>".$MostrarFila['Titulo']."</td>";
  echo 
"<td>".$MostrarFila['descripcion']."</td>"
  echo 
"</tr>";
 }
 echo 
"</table>";

 
//******--------determinar las páginas---------******//
 
$NroRegistros=mysql_num_rows(mysql_query("SELECT * FROM propiedades",$conexion));
 
$PagAnt=$PagAct-1;
 
$PagSig=$PagAct+1;
 
$PagUlt=$NroRegistros/$RegistrosAMostrar;

 
//verificamos residuo para ver si llevará decimales
 
$Res=$NroRegistros%$RegistrosAMostrar;
 
// si hay residuo usamos funcion floor para que me
 // devuelva la parte entera, SIN REDONDEAR, y le sumamos
 // una unidad para obtener la ultima pagina
 
if($Res>0$PagUlt=floor($PagUlt)+1;
 
 
//desplazamiento
 
echo "<a onclick=\"index.php?pag=Casas&paginador&Pagina('1')\">Primero</a> ";
 if(
$PagAct>1) echo "<a onclick=\"index.php?pag=Casas&paginador&Pagina('$PagAnt')\">Anterior</a> ";
 echo 
"<strong>Pagina ".$PagAct."/".$PagUlt."</strong>";
 if(
$PagAct<$PagUlt)  echo " <a onclick=\"index.php?pag=Casas&paginador&Pagina('$PagSig')\">Siguiente</a> ";
 echo 
"<a onclick=\"index.php?pag=Casas&paginador&Pagina('$PagUlt')\">Ultimo</a>";
?>
</p>
<p>&nbsp; </p>
</body>
</html>
el problema es que por mas que busque lo logro hacer funcionar los link:

Código PHP:
//desplazamiento
 
echo "<a onclick=\"index.php?pag=Casas&paginador&Pagina('1')\">Primero</a> ";
 if(
$PagAct>1) echo "<a onclick=\"index.php?pag=Casas&paginador&Pagina('$PagAnt')\">Anterior</a> ";
 echo 
"<strong>Pagina ".$PagAct."/".$PagUlt."</strong>";
 if(
$PagAct<$PagUlt)  echo " <a onclick=\"index.php?pag=Casas&paginador&Pagina('$PagSig')\">Siguiente</a> ";
 echo 
"<a onclick=\"index.php?pag=Casas&paginador&Pagina('$PagUlt')\">Ultimo</a>"
me muestra los numero me muestra la opcion de link pero no pasa a siguiente pagina.

por favor echenme una mano ya busque en el foro pero no encuentro la solucion.

de antemano muchas gracias amigos.

?>[/PHP]

Etiquetas: html, imagenes, modular, paginacion, registro, seguimiento
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 01:06.