Foros del Web » Programando para Internet » PHP »

Problema con paginacion

Estas en el tema de Problema con paginacion en el foro de PHP en Foros del Web. Hola amigos como estan, yo otra vez aqui consultando, esta vez mi problema es el siguiente: estoy paginando una busque con php y postgre version ...
  #1 (permalink)  
Antiguo 30/12/2008, 15:06
 
Fecha de Ingreso: diciembre-2007
Mensajes: 385
Antigüedad: 16 años, 3 meses
Puntos: 0
Problema con paginacion

Hola amigos como estan, yo otra vez aqui consultando, esta vez mi problema es el siguiente:
estoy paginando una busque con php y postgre version 8.2 y lo q me pasa es lo siguiente, al presionar buscar me aparecen los resultados en la cantidad q yo quiero, pero al hacer click en siguiente no me aparecen los siguientes datos q deberia mostrar :( aqui les dejo mi codigo:
Código PHP:
if($_POST['nombre'])
    {
    
        //COMIENZA PAGINACION
        //cantidad de registros q deseas q aparezcan
            $TAMANO_PAGINA = 1;
            
            //capturas la pagina en la q estas
            if (isset($_GET['pagina'])){ 
              $pagina= $_GET["pagina"]; 
            } else { 
              $pagina=''; 
            } 
            
            
            //si estas en la primera pagin ale asignas los valores iniciales
            if (!$pagina) {
                $inicio = 0;
                $pagina=1;
            }
            else {
                $inicio = ($pagina - 1) * $TAMANO_PAGINA;
            } 
            
            
                        //consulta a la base de datos para ver cuantos registros hay
            $ssql="SELECT * from nino";
            $rs=pg_query($conn,$ssql);
            $num_total_registros = pg_num_rows($rs);
            //cuantas paginas seran
            $total_paginas = ceil($num_total_registros / $TAMANO_PAGINA);
            
            echo "Numero de registros encontrados: " . $num_total_registros .
            "<br>";
            echo "Se muestran paginas de " . $TAMANO_PAGINA . " registros
            cada una<br>";
            echo "Mostrando la pagina " . $pagina . " de " . $total_paginas .
            "<p>";    
    
    

        $SELECT_NOMBRE_NINO="SELECT * FROM nino WHERE nombre_nino ILIKE '".$_POST['nombre']."%' LIMIT '$TAMANO_PAGINA' OFFSET '$inicio' ";
        $RES_NOMBRE_NINO = pg_exec ($conn, $SELECT_NOMBRE_NINO);
        if(pg_num_rows($RES_NOMBRE_NINO)==0)
        {
            echo "<tr>";
            echo "<td>";
            echo "<font color='red'>La consulta no arrojo resultados</font>";
            echo "</td>";
            echo "</tr>";
        }
        
        else
        {
            while ($row = pg_fetch_array($RES_NOMBRE_NINO)) 
            {
                echo "<tr>";
                echo "<td class='segundalinea'>";
                ?>
                <a href="#" onClick="EnviarCodigoNino('<? echo $row[0]; ?>', '<? echo $row[1]; ?>')">
                <?     echo $row[0]; ?>                    
                </a>
                <?
                
echo "</td>";
                echo 
"<td>".$row[1]."</td>";
                echo 
"<td>".$row[2]."</td>";
                echo 
"<td>".$row[3]."</td>";
                echo 
"<td>".$row[4]."</td>";                    
                echo 
"<td>".$row[5]."</td>";
                echo 
"<td>".$row[6]."</td>";
                echo 
"<td>".$row[7]."</td>";
                echo 
"<td>".$row[8]."</td>";
                echo 
"<td>".$row[9]."</td>";
                
//echo "<td class='segundalinea'>".$row[10]."</td>";
                //echo "<td class='segundalinea'>".$row[11]."</td>";
                //echo "<td class='segundalinea'>".$row[12]."</td>";            
                
echo "<td><a href=\"modificar_nino.php?id_nino_edit=$row[0]&nombre_nino_edit=$row[1]&genero_nino_edit=$row[2]&fecha_calendario_edit=$row[3]&grupo_etnico_nino_edit=$row[4]&formacion_valorica_nino_edit=$row[5]&direccion_nino_edit=$row[6]&fono_edit=$row[7]&vive_con_edit=$row[8]&mo_no_vive_con_padres_edit=$row[9]\" onclick=\"return confirm('¿Esta seguro de que desea modificar los datos de $row[1]?')\"><img src='./imagenes/Refresh.gif' alt='refresh' width='23' height='23' border='0'</a></td>";  
                echo 
"<td><a href=\"buscar_nino.php?id_nino_delete=$row[0]&nombre_nino_delete=$row[1]&\" onclick=\"return confirm('¿Esta seguro de que desea eliminar a $row[1]?')\"><img src='./imagenes/Stop24.gif' alt='delete' width='23' height='23' border='0'</a></td>";
                echo 
"</tr>";
            }
        }
    }
}
//*********************
//codigo de la paginacion
if($num_total_registros) {
        
        echo 
"<center>";
        
        if((
$pagina 1) > 0) {
            echo 
"<a href='".$_SERVER["PHP_SELF"]."?nombre=".$_REQUEST['nombre']."&pagina=".($pagina-1)."'>< Anterior</a> ";
        }
        
        for (
$i=1$i<=$total_paginas$i++){ 
            if (
$pagina == $i
                echo 
"<b>".$pagina."</b> "
            else
                echo 
"<a href='".$_SERVER["PHP_SELF"]."?nombre=".$_REQUEST['nombre']."&pagina=$i'>$i</a> "
        }
      
        if((
$pagina 1)<=$total_paginas) {
            echo 
" <a href='".$_SERVER["PHP_SELF"]."?nombre=".$_REQUEST['nombre']."&pagina=".($pagina+1)."'>Siguiente ></a>";
        }
        
        echo 
"</center>";
        
    }
//------------------------
he probado pasando el criterio a buscar(nombre) por POST, GET REQUEST y nada no me funciona y en la url si me muestra el criterio a buscar y la pagina en q se encuentra asi:
http://localhost/pda/buscar_nino?nombre=juan&pagina=2

pero en esta segunda pagina no me muestra nada en q estoy fallando si el criterio a mostrar se propaga por la url??? cual sera mi error??? de antemano gracias.... bye
  #2 (permalink)  
Antiguo 30/12/2008, 15:21
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 7 meses
Puntos: 2237
Respuesta: Problema con paginacion

En tu consulta estas filtrando la informacion usando $_POST['nombre'], te funciona si llegas por un formulario enviado por metodo POST, pero al hacer un click para mostrar otra pagina, la solicitud se realiza por metodo GET, con lo que no obtendras valores en $_POST

Mejor crea variables:
Código PHP:
$nombre = (isset($_POST['nombre'])) ? $_POST['nombre'] : '';
if(isset(
$_GET['nombre']))
    
$nombre $_GET['nombre'];

// En tu consulta usas WHERE nombre = '$nombre' 
__________________
- León, Guanajuato
- GV-Foto
  #3 (permalink)  
Antiguo 30/12/2008, 15:41
(Desactivado)
 
Fecha de Ingreso: abril-2008
Mensajes: 787
Antigüedad: 15 años, 11 meses
Puntos: 7
Respuesta: Problema con paginacion

hola. alli lo k estas haciendo estas condicionando en tu primer codigo:

Código PHP:

            
//capturas la pagina en la q estas
            
if (isset($_GET['pagina'])){ 
              
$pagina$_GET["pagina"]; 
            } else { 
              
$pagina=''
            } 
y en el 2do codigo:

Código PHP:

            
if (!$pagina) {
                
$inicio 0;
                
$pagina=1;
            }
            else {
                
$inicio = ($pagina 1) * $TAMANO_PAGINA;
            } 
cambiale de nombre y ponlo $pag. puede ser k no funcione tu paginacion.

Código PHP:

//codigo de la paginacion
if($num_total_registros) {
        
        echo 
"<center>";
        
        if((
$pag 1) > 0) {
            echo 
"<a href='".$_SERVER["PHP_SELF"]."?nombre=".$_REQUEST['nombre']."&pag=".($pag-1)."'>< Anterior</a> ";
        }
        
        for (
$i=1$i<=$total_paginas$i++){ 
            if (
$pag == $i
                echo 
"<b>".$pag."</b> "
            else
                echo 
"<a href='".$_SERVER["PHP_SELF"]."?nombre=".$_REQUEST['nombre']."&pag=$i'>$i</a> "
        }
      
        if((
$pag 1)<=$total_paginas) {
            echo 
" <a href='".$_SERVER["PHP_SELF"]."?nombre=".$_REQUEST['nombre']."&pag=".($pag+1)."'>Siguiente ></a>";
        }
        
        echo 
"</center>";
        

lo recomendable seria poner el nombre de tu archivo k esta haciendo tu busqueda.

saludos.
  #4 (permalink)  
Antiguo 30/12/2008, 15:59
 
Fecha de Ingreso: diciembre-2007
Mensajes: 385
Antigüedad: 16 años, 3 meses
Puntos: 0
Respuesta: Problema con paginacion

Hola Triby, probe como me dijiste pero no me funciona :S una pregunta en q parte creo las variables antes o despues del if($_POST) pq probe creandolas antes y despues y me sigue pasando lo mismo snif.... en q parte crea esas variables??? aqui dejo el codigo:

Código PHP:
if($_POST['nombre'])
    {
    $nombre = (isset($_POST['nombre'])) ? $_POST['nombre'] : '';
if(isset($_GET['nombre']))
    $nombre = $_GET['nombre'];
    
    
        //COMIENZA PAGINACION
        //cantidad de registros q deseas q aparezcan
            $TAMANO_PAGINA = 1;
            
            //capturas la pagina en la q estas
            if (isset($_GET['pagina'])){ 
              $pagina= $_GET["pagina"]; 
            } else { 
              $pagina=''; 
            } 
            
            
            //si estas en la primera pagin ale asignas los valores iniciales
            if (!$pagina) {
                $inicio = 0;
                $pagina=1;
            }
            else {
                $inicio = ($pagina - 1) * $TAMANO_PAGINA;
            } 
            
            
                        //consulta a la base de datos para ver cuantos registros hay
            $ssql="SELECT * from nino";
            $rs=pg_query($conn,$ssql);
            $num_total_registros = pg_num_rows($rs);
            //cuantas paginas seran
            $total_paginas = ceil($num_total_registros / $TAMANO_PAGINA);
            
            echo "Numero de registros encontrados: " . $num_total_registros .
            "<br>";
            echo "Se muestran paginas de " . $TAMANO_PAGINA . " registros
            cada una<br>";
            echo "Mostrando la pagina " . $pagina . " de " . $total_paginas .
            "<p>";    
    
    

        $SELECT_NOMBRE_NINO="SELECT * FROM nino WHERE nombre_nino ILIKE '".$nombre."%' LIMIT '$TAMANO_PAGINA' OFFSET '$inicio' ";
        $RES_NOMBRE_NINO = pg_exec ($conn, $SELECT_NOMBRE_NINO);
        if(pg_num_rows($RES_NOMBRE_NINO)==0)
        {
            echo "<tr>";
            echo "<td>";
            echo "<font color='red'>La consulta no arrojo resultados</font>";
            echo "</td>";
            echo "</tr>";
        }
        
        else
        {
            while ($row = pg_fetch_array($RES_NOMBRE_NINO)) 
            {
                echo "<tr>";
                echo "<td class='segundalinea'>";
                ?>
                <a href="#" onClick="EnviarCodigoNino('<? echo $row[0]; ?>', '<? echo $row[1]; ?>')">
                <?     echo $row[0]; ?>                    
                </a>
                <?
                
echo "</td>";
                echo 
"<td>".$row[1]."</td>";
                echo 
"<td>".$row[2]."</td>";
                echo 
"<td>".$row[3]."</td>";
                echo 
"<td>".$row[4]."</td>";                    
                echo 
"<td>".$row[5]."</td>";
                echo 
"<td>".$row[6]."</td>";
                echo 
"<td>".$row[7]."</td>";
                echo 
"<td>".$row[8]."</td>";
                echo 
"<td>".$row[9]."</td>";
                
//echo "<td class='segundalinea'>".$row[10]."</td>";
                //echo "<td class='segundalinea'>".$row[11]."</td>";
                //echo "<td class='segundalinea'>".$row[12]."</td>";            
                
echo "<td><a href=\"modificar_nino.php?id_nino_edit=$row[0]&nombre_nino_edit=$row[1]&genero_nino_edit=$row[2]&fecha_calendario_edit=$row[3]&grupo_etnico_nino_edit=$row[4]&formacion_valorica_nino_edit=$row[5]&direccion_nino_edit=$row[6]&fono_edit=$row[7]&vive_con_edit=$row[8]&mo_no_vive_con_padres_edit=$row[9]\" onclick=\"return confirm('¿Esta seguro de que desea modificar los datos de $row[1]?')\"><img src='./imagenes/Refresh.gif' alt='refresh' width='23' height='23' border='0'</a></td>";  
                echo 
"<td><a href=\"buscar_nino.php?id_nino_delete=$row[0]&nombre_nino_delete=$row[1]&\" onclick=\"return confirm('¿Esta seguro de que desea eliminar a $row[1]?')\"><img src='./imagenes/Stop24.gif' alt='delete' width='23' height='23' border='0'</a></td>";
                echo 
"</tr>";
            }
        }
    }
}
//*********************
//codigo de la paginacion
if($num_total_registros) {
        
        echo 
"<center>";
        
        if((
$pagina 1) > 0) {
            echo 
"<a href='".$_SERVER["PHP_SELF"]."?pagina=".($pagina-1)."&nombre=".$nombre."'>< Anterior</a> ";
        }
        
        for (
$i=1$i<=$total_paginas$i++){ 
            if (
$pagina == $i
                echo 
"<b>".$pagina."</b> "
            else
                echo 
"<a href='".$_SERVER["PHP_SELF"]."?pagina=$i&nombre=".$nombre."'>$i</a> "
        }
      
        if((
$pagina 1)<=$total_paginas) {
            echo 
" <a href='".$_SERVER["PHP_SELF"]."?pagina=".($pagina+1)."&nombre=".$nombre."'>Siguiente ></a>";
        }
        
        echo 
"</center>";
        
    }
//------------------------
porfavor en q parte crea dichas variables..... de antemano gracias...bye.
  #5 (permalink)  
Antiguo 30/12/2008, 19:30
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 7 meses
Puntos: 2237
Respuesta: Problema con paginacion

r0xdrig0, ese if($_POST['nombre']) no esta bien, tal vez funcione, pero no es lo correcto, te explico lo que hacen las lineas que te deje:

$nombre = (isset($_POST['nombre'])) ? $_POST['nombre'] : '';

1- Lo que esta en color naranja es una condicion, tal como la haces con un if.
2- Si se cumple la condicion se ejecuta lo que esta despues del ? y en color verde, en este caso
3- Si no se cumple la condicion se ejecuta lo que sigue despues de los dos puntos y que puse en rojo (espero que se vea que es una cadena vacia)

Entonces, con esa linea inicializas la variable en base a una condicion, si existe $_POST['nombre'], le das ese valor, si no, lo dejas como cadena vacia.

Con esto ya verificamos si la variable se proporciono por medio de metodo POST, la siguiente linea es por si la variable fue proporcionada en la URL (metodo GET) y usamos un normal.

Código PHP:
if(isset($_GET['nombre']))
    
$nombre $_GET['nombre']; 
OJO: para if, for, foreach, while, si solo vas a ejecutar una linea no es necesario usar llaves {}

Despues de esto ya viene todo tu codigo tal como lo tenias, solo modificas la consulta:

Código PHP:
$SELECT_NOMBRE_NINO="SELECT * FROM nino WHERE nombre_nino ILIKE '$nombre%' LIMIT '$TAMANO_PAGINA' OFFSET '$inicio' "
Edito: Tambien puedes optimizar la forma en que inicializas el numero de pagina:
Código PHP:
//capturas la pagina en la q estas
if (isset($_GET['pagina'])){ 
      
$pagina$_GET["pagina"]; 
} else { 
      
$pagina=''// Yo cambiaria esto por 1 en vez de cadena vacia
}
//si estas en la primera pagina le asignas los valores iniciales
if (!$pagina) {
        
$inicio 0;
        
$pagina=1;
}
else {
        
$inicio = ($pagina 1) * $TAMANO_PAGINA;
}


// Todo ese bloque es igual a:
$pagina = (isset($_GET['pagina'] )) ? $_GET['pagina']  : 1;
$inicio = ($pagina 1) * $TAMANO_PAGINA
__________________
- León, Guanajuato
- GV-Foto

Última edición por Triby; 30/12/2008 a las 19:37
  #6 (permalink)  
Antiguo 31/12/2008, 08:08
 
Fecha de Ingreso: diciembre-2007
Mensajes: 385
Antigüedad: 16 años, 3 meses
Puntos: 0
Respuesta: Problema con paginacion

Hola amigos, Triby lo intente como me aconsejaste pero me sigue sin mostrarme la segunda pagina aqui les dejo el codigo q probre (sorry por las molestias amigos pero esto me tiene urgidicimo) el codigo es:
Código PHP:
$nombre = (isset($_POST['nombre'])) ? $_POST['nombre'] : '';
if(isset($_GET['nombre']))
    $nombre = $_GET['nombre'];
    //if($_POST['nombre'])
    //{
    
    
    
        //COMIENZA PAGINACION
        //cantidad de registros q deseas q aparezcan
            $TAMANO_PAGINA = 1;
            
            //capturas la pagina en la q estas
            if (isset($_GET['pagina'])){ 
              $pagina= $_GET["pagina"]; 
            } else { 
              $pagina=''; 
            } 
            
            
            //si estas en la primera pagin ale asignas los valores iniciales
            if (!$pagina) {
                $inicio = 0;
                $pagina=1;
            }
            else {
                $inicio = ($pagina - 1) * $TAMANO_PAGINA;
            } 
            
            
                        //consulta a la base de datos para ver cuantos registros hay
            $ssql="SELECT * from nino";
            $rs=pg_query($conn,$ssql);
            $num_total_registros = pg_num_rows($rs);
            //cuantas paginas seran
            $total_paginas = ceil($num_total_registros / $TAMANO_PAGINA);
            
            echo "Numero de registros encontrados: " . $num_total_registros .
            "<br>";
            echo "Se muestran paginas de " . $TAMANO_PAGINA . " registros
            cada una<br>";
            echo "Mostrando la pagina " . $pagina . " de " . $total_paginas .
            "<p>";    
    
    

        $SELECT_NOMBRE_NINO="SELECT * FROM nino WHERE nombre_nino ILIKE '$nombre%' LIMIT '$TAMANO_PAGINA' OFFSET '$inicio' ";
        $RES_NOMBRE_NINO = pg_exec ($conn, $SELECT_NOMBRE_NINO);
        if(pg_num_rows($RES_NOMBRE_NINO)==0)
        {
            echo "<tr>";
            echo "<td>";
            echo "<font color='red'>La consulta no arrojo resultados</font>";
            echo "</td>";
            echo "</tr>";
        }
        
        else
        {
            while ($row = pg_fetch_array($RES_NOMBRE_NINO)) 
            {
                echo "<tr>";
                echo "<td class='segundalinea'>";
                ?>
                <a href="#" onClick="EnviarCodigoNino('<? echo $row[0]; ?>', '<? echo $row[1]; ?>')">
                <?     echo $row[0]; ?>                    
                </a>
                <?
                
echo "</td>";
                echo 
"<td>".$row[1]."</td>";
                echo 
"<td>".$row[2]."</td>";
                echo 
"<td>".$row[3]."</td>";
                echo 
"<td>".$row[4]."</td>";                    
                echo 
"<td>".$row[5]."</td>";
                echo 
"<td>".$row[6]."</td>";
                echo 
"<td>".$row[7]."</td>";
                echo 
"<td>".$row[8]."</td>";
                echo 
"<td>".$row[9]."</td>";
                
//echo "<td class='segundalinea'>".$row[10]."</td>";
                //echo "<td class='segundalinea'>".$row[11]."</td>";
                //echo "<td class='segundalinea'>".$row[12]."</td>";            
                
echo "<td><a href=\"modificar_nino.php?id_nino_edit=$row[0]&nombre_nino_edit=$row[1]&genero_nino_edit=$row[2]&fecha_calendario_edit=$row[3]&grupo_etnico_nino_edit=$row[4]&formacion_valorica_nino_edit=$row[5]&direccion_nino_edit=$row[6]&fono_edit=$row[7]&vive_con_edit=$row[8]&mo_no_vive_con_padres_edit=$row[9]\" onclick=\"return confirm('¿Esta seguro de que desea modificar los datos de $row[1]?')\"><img src='./imagenes/Refresh.gif' alt='refresh' width='23' height='23' border='0'</a></td>";  
                echo 
"<td><a href=\"buscar_nino.php?id_nino_delete=$row[0]&nombre_nino_delete=$row[1]&\" onclick=\"return confirm('¿Esta seguro de que desea eliminar a $row[1]?')\"><img src='./imagenes/Stop24.gif' alt='delete' width='23' height='23' border='0'</a></td>";
                echo 
"</tr>";
            }
        }
    }
//}
//*********************
//codigo de la paginacion
if($num_total_registros) {
        
        echo 
"<center>";
        
        if((
$pag 1) > 0) {
            echo 
"<a href='buscar_nino?pagina=".($pagina-1)."&nombre=".$nombre."'>< Anterior</a> ";
        }
        
        for (
$i=1$i<=$total_paginas$i++){ 
            if (
$pag == $i
                echo 
"<b>".$pagina."</b> "
            else
                echo 
"<a href='buscar_nino?pagina=$i&nombre=".$nombre."'>$i</a> "
        }
      
        if((
$pag 1)<=$total_paginas) {
            echo 
" <a href='buscar_nino?pagina=".($pagina+1)."&nombre=".$nombre."'>Siguiente ></a>";
        }
        
        echo 
"</center>";
        
    }
//------------------------
cambie el if como me aconsejaste triby pero me sigue sin mostrar en la pagina siguiente pq me sucedera esto??? en realidad ya no se q hacer, porfavor amigos ruego su ayuda, de antemano gracias
  #7 (permalink)  
Antiguo 31/12/2008, 08:34
(Desactivado)
 
Fecha de Ingreso: abril-2008
Mensajes: 787
Antigüedad: 15 años, 11 meses
Puntos: 7
Respuesta: Problema con paginacion

hola. fijate bien en tu codigo. te envie una pequeña correcion. creo k no lo viste o te percataste. y si lo k kieres hacer para k te muestre una busqueda paginada

Código:
http://localhost/pda/buscar_nino?nombre=juan&pagina=2
debes hacer esto. es un simple if:

Código PHP:

if($_GET['nombre']){ 
     
$nombre$_GET['nombre']; 
}else{ 
     
$nombre$_POST['nombre'];

saludos.
  #8 (permalink)  
Antiguo 31/12/2008, 10:45
 
Fecha de Ingreso: diciembre-2007
Mensajes: 385
Antigüedad: 16 años, 3 meses
Puntos: 0
Respuesta: Problema con paginacion

hola esaenz22, en q parte ubico ese if?? ya q necesito un if para q me reconosca q la busqueda esta siendo por nombre, entonces mi duda es donde indico eso y donde ubico el trozo de codigo q me indicas???, mil disculpas ojala me puedan seguiir guiando de antemano gracias.... bye.
  #9 (permalink)  
Antiguo 31/12/2008, 10:52
 
Fecha de Ingreso: diciembre-2007
Mensajes: 385
Antigüedad: 16 años, 3 meses
Puntos: 0
Respuesta: Problema con paginacion

Hola amigos ahora mi codigo lo puse asi:
Código PHP:
if($nombre)
    {
    if($_GET['nombre']){ 
     $nombre= $_GET['nombre']; 
}else{ 
     $nombre= $_POST['nombre'];
}  
    
    
        //COMIENZA PAGINACION
        //cantidad de registros q deseas q aparezcan
            $TAMANO_PAGINA = 1;
            
            //capturas la pagina en la q estas
            if (isset($_GET['pagina'])){ 
              $pagina= $_GET["pagina"]; 
            } else { 
              $pagina=''; 
            } 
            
            
            //si estas en la primera pagin ale asignas los valores iniciales
            if (!$pagina) {
                $inicio = 0;
                $pagina=1;
            }
            else {
                $inicio = ($pagina - 1) * $TAMANO_PAGINA;
            } 
            
            
                        //consulta a la base de datos para ver cuantos registros hay
            $ssql="SELECT * from nino";
            $rs=pg_query($conn,$ssql);
            $num_total_registros = pg_num_rows($rs);
            //cuantas paginas seran
            $total_paginas = ceil($num_total_registros / $TAMANO_PAGINA);
            
            echo "Numero de registros encontrados: " . $num_total_registros .
            "<br>";
            echo "Se muestran paginas de " . $TAMANO_PAGINA . " registros
            cada una<br>";
            echo "Mostrando la pagina " . $pagina . " de " . $total_paginas .
            "<p>";    
    
    

        $SELECT_NOMBRE_NINO="SELECT * FROM nino WHERE nombre_nino ILIKE '$nombre%' LIMIT '$TAMANO_PAGINA' OFFSET '$inicio' ";
        $RES_NOMBRE_NINO = pg_exec ($conn, $SELECT_NOMBRE_NINO);
        if(pg_num_rows($RES_NOMBRE_NINO)==0)
        {
            echo "<tr>";
            echo "<td>";
            echo "<font color='red'>La consulta no arrojo resultados</font>";
            echo "</td>";
            echo "</tr>";
        }
        
        else
        {
            while ($row = pg_fetch_array($RES_NOMBRE_NINO)) 
            {
                echo "<tr>";
                echo "<td class='segundalinea'>";
                ?>
                <a href="#" onClick="EnviarCodigoNino('<? echo $row[0]; ?>', '<? echo $row[1]; ?>')">
                <?     echo $row[0]; ?>                    
                </a>
                <?
                
echo "</td>";
                echo 
"<td>".$row[1]."</td>";
                echo 
"<td>".$row[2]."</td>";
                echo 
"<td>".$row[3]."</td>";
                echo 
"<td>".$row[4]."</td>";                    
                echo 
"<td>".$row[5]."</td>";
                echo 
"<td>".$row[6]."</td>";
                echo 
"<td>".$row[7]."</td>";
                echo 
"<td>".$row[8]."</td>";
                echo 
"<td>".$row[9]."</td>";
                
//echo "<td class='segundalinea'>".$row[10]."</td>";
                //echo "<td class='segundalinea'>".$row[11]."</td>";
                //echo "<td class='segundalinea'>".$row[12]."</td>";            
                
echo "<td><a href=\"modificar_nino.php?id_nino_edit=$row[0]&nombre_nino_edit=$row[1]&genero_nino_edit=$row[2]&fecha_calendario_edit=$row[3]&grupo_etnico_nino_edit=$row[4]&formacion_valorica_nino_edit=$row[5]&direccion_nino_edit=$row[6]&fono_edit=$row[7]&vive_con_edit=$row[8]&mo_no_vive_con_padres_edit=$row[9]\" onclick=\"return confirm('¿Esta seguro de que desea modificar los datos de $row[1]?')\"><img src='./imagenes/Refresh.gif' alt='refresh' width='23' height='23' border='0'</a></td>";  
                echo 
"<td><a href=\"buscar_nino.php?id_nino_delete=$row[0]&nombre_nino_delete=$row[1]&\" onclick=\"return confirm('¿Esta seguro de que desea eliminar a $row[1]?')\"><img src='./imagenes/Stop24.gif' alt='delete' width='23' height='23' border='0'</a></td>";
                echo 
"</tr>";
            }
        }
    }
}
//*********************
//codigo de la paginacion
if($num_total_registros) {
        
        echo 
"<center>";
        
        if((
$pag 1) > 0) {
            echo 
"<a href='buscar_nino?pagina=".($pagina-1)."&nombre=".$nombre."'>< Anterior</a> ";
        }
        
        for (
$i=1$i<=$total_paginas$i++){ 
            if (
$pag == $i
                echo 
"<b>".$pagina."</b> "
            else
                echo 
"<a href='buscar_nino?pagina=$i&nombre=".$nombre."'>$i</a> "
        }
      
        if((
$pag 1)<=$total_paginas) {
            echo 
" <a href='buscar_nino?pagina=".($pagina+1)."&nombre=".$nombre."'>Siguiente ></a>";
        }
        
        echo 
"</center>";
        
    }
//------------------------
pero me sigue sin aparecer nada en la segunda parte, pero si se me propagan las variables por la url en q estoy fallando??????? :S, ya no se q hacer, ayuda pleaseeeeeeeeee, de antemano gracias, bye
  #10 (permalink)  
Antiguo 31/12/2008, 14:00
(Desactivado)
 
Fecha de Ingreso: abril-2008
Mensajes: 787
Antigüedad: 15 años, 11 meses
Puntos: 7
Respuesta: Problema con paginacion

hola r0xdrig0. mejor enviame tu codigo y tus tablas para revisarlo. por k asi no vas a entender las soluciones k aportan los otros usuarios.

saludos y feliz año 2009.
  #11 (permalink)  
Antiguo 31/12/2008, 15:22
 
Fecha de Ingreso: diciembre-2007
Mensajes: 385
Antigüedad: 16 años, 3 meses
Puntos: 0
Respuesta: Problema con paginacion

hola esaenz22 te envie un mensaje privado con mi msn para q me agregues porfa, te lo agradeceria mucho, para asi terminar con esta maldita paginacion, gracias de antemano y un feliz año 09 a ti y a todo el foro Cheers!!!!!!!
  #12 (permalink)  
Antiguo 31/12/2008, 17:33
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 7 meses
Puntos: 2237
Respuesta: Problema con paginacion

r0xdrig0, tienes que analizar las soluciones que cada usuario te propone y ver cual es la que mas te conviene utilizar, no modifiques tu codigo porque alguien te dice que eso debe funcionar, revisa el codigo propuesto y las instrucciones, trata de entenderlo, aplicalo y, si tienes mas dudas, preguntas nuevamente y asi seguimos hasta que tu script completo funcione como deseas.

Hace unos minutos pense que seria bueno hacer el codigo tal como lo necesitas para ponerlo aqui, pero, si realmente quieres aprender, en vez de ayudarte te estaria dañando al no darte la oportunidad de aprender y solucionarlo por ti mismo.

Otra cosa seria que no quieras aprender y prefieras que alguien mas haga ese codigo por ti, para eso hay una seccion especifica.
__________________
- León, Guanajuato
- GV-Foto
  #13 (permalink)  
Antiguo 31/12/2008, 18:29
(Desactivado)
 
Fecha de Ingreso: abril-2008
Mensajes: 787
Antigüedad: 15 años, 11 meses
Puntos: 7
Respuesta: Problema con paginacion

hola triby. lo unico hice fue indicarle a r0xdrig0 como solucionar su codigo de paginacion. asi como le dijiste a r0xdrig0 no modifiques tu codigo porque alguien te dice que eso debe funcionar. es verdad k uno ve el codigo, lo copia y pega, pero al final no va entender cual va ser su funcionalidad. como tu dices k uno le da la oportunidad de aprender y solucionarlo por si mismo. no voy a estar copiando y pegando que codigo php va funcionar bien. bueno, solo fue mi opinion.

saludos.

Última edición por esaenz22; 31/12/2008 a las 18:35
  #14 (permalink)  
Antiguo 31/12/2008, 18:36
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 7 meses
Puntos: 2237
Respuesta: Problema con paginacion

esaenz22, no te estoy criticando por tratar de ayudar, sino a r0xdrig0 por aplicar los cambios sin analizar los motivos; cuando dije "no modifiques tu codigo porque alguien te dice que eso debe funcionar" no me referia a ti, sino a cualquiera que haga un aporte, incluyendome.
__________________
- León, Guanajuato
- GV-Foto
  #15 (permalink)  
Antiguo 31/12/2008, 18:52
(Desactivado)
 
Fecha de Ingreso: abril-2008
Mensajes: 787
Antigüedad: 15 años, 11 meses
Puntos: 7
Respuesta: Problema con paginacion

bueno. si es verdad.

Última edición por esaenz22; 01/01/2009 a las 07:12
  #16 (permalink)  
Antiguo 01/01/2009, 14:49
 
Fecha de Ingreso: diciembre-2007
Mensajes: 385
Antigüedad: 16 años, 3 meses
Puntos: 0
Respuesta: Problema con paginacion

Hola amigos, sorry por todo, pero la verdad es q he intentado arreglar el problema haciendo lo q me sugeren, tambien he leido y nada aun no me propaga la variable a las paginas siguientes, lo raro es q si me pasa la variable por la url, he intentadocon lo q uds me han dicho tb he leido y buscado pero nada, pq creen uds q la variable no se propaga para las paginas siguientes???, porfavor agredeceria mucho su guia y ayuda .... de antemano gracias y de verdad disculpen, pero aun no logro q funcione....saludos
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:00.