Foros del Web » Programando para Internet » PHP »

Paginacion Resultados

Estas en el tema de Paginacion Resultados en el foro de PHP en Foros del Web. Soy nuevo en esto, este es mi mega churro PHP, lo que hace es mostrar noticias (todas las categorias si id_categoria esta vacio) o (las ...
  #1 (permalink)  
Antiguo 22/11/2011, 06:28
 
Fecha de Ingreso: diciembre-2005
Mensajes: 87
Antigüedad: 18 años, 10 meses
Puntos: 3
Sonrisa Paginacion Resultados

Soy nuevo en esto, este es mi mega churro PHP, lo que hace es mostrar noticias (todas las categorias si id_categoria esta vacio) o (las noticias de la categoria indicada) o no hay noticias si no existen noticias.

Bien necesito que tenga un paginador porque en algunas secciones tengo topecientas mil noticias. Este es mi codigo fuente, agradeceria mucho que me puedan ayudar!

Código PHP:
<!-- BLOGPOST -->
                        <?
                        $id_categoria 
$_GET[id_categoria];
                                                
//conectamos a la base
include ("includes/conexion_db.php");

//realizamos la busqueda
// Evaluates to true because $var is empty
if (empty($id_categoria)) {
$result=mysql_query("select * from noticias order by fecha desc"$link);
}
// Evaluates as true because $var is set
if (isset($id_categoria)) {
$result=mysql_query("select * from noticias where id_categoria='$id_categoria' order by fecha desc"$link);
}
$total_registros=mysql_num_rows($result);
if(
$total_registros>0){ 
//Recogemos las consultas en un array y las mos tramos
while($row=mysql_fetch_array($result))
{
$consulta_categoria=mysql_query("select * from noticias_categorias where id_categoria='".$row[id_categoria]."'",$link);
$categoria_noticia=mysql_fetch_array($consulta_categoria);
$cont_comentarios=mysql_query("select * from noticias_comentarios where id_noticia='$row[id_noticia]'",$link);
$total_comentarios=mysql_num_rows($cont_comentarios);
echo 
"<div class='blogpost'>";
echo 
"<div class='postinfo'>";
echo 
"<div class='infowrap'><span class='iconauthor'></span>Por: ".$row[autor]."</div>";
echo 
"<div class='infodivider'></div>";
echo 
"<div class='infowrap'><span class='icontime'></span>".$row[fecha]."</div>";
echo 
"<div class='infodivider'></div>";
echo 
"<div class='infowrap'><span class='iconcategory'></span>En <a href='noticias.php?id_categoria=".$row[id_categoria]."'>".$categoria_noticia[categoria]."</a></div>";
echo 
"<div class='infodivider'></div>";
echo 
"<div class='infowrap'><span class='iconcomments'></span><a href='detalle_noticia.php?id_noticia=".$row[id_noticia]."#comentarios'>$total_comentarios Comentarios</a></div>";
echo 
"<div class='infodivider'></div>";
echo 
"<div class='twitterwrap' data-text='CIdE - Consultora Integral de Empresas' data-url='http://www.cidesalta.com.ar/detalle_noticia.php?id_noticia=".$row[id_noticia]."'></div>";
echo 
"<div class='infodivider'></div>";
echo 
"<div class='facebookwrap' data-url='http://www.cidesalta.com.ar/detalle_noticia.php?id_noticia=".$row[id_noticia]."'></div>";
echo 
"<br style='clear: left' />";
echo 
"</div>";
echo 
"<div class='blogimage'>";
echo 
"<a href='detalle_noticia.php?id_noticia=".$row[id_noticia]."' data-rel='fadeimg'><img src='images/noticias/".$row[imagen]."' alt='' /></a>";
echo 
"</div>";
echo 
"<div class='blogshadow'></div>";
echo 
"<h5><a href='detalle_noticia.php?id_noticia=".$row[id_noticia]."'>".$row[titulo]."</a></h5>";
echo 
"<div class='editorarea'>";
echo 
"<p>".$row[noticia]."</p><br><br>";
echo 
"<span class='blogbutton'><a href='#' class='buttonlight rounded'>Leer +</a></span>";
echo 
"<br style='clear: left' />";
echo 
"</div>";
echo 
"<div class='blogpostdivider'></div>";
echo 
"<br style='clear: left' />";
echo 
"</div>";
echo 
"";
}
mysql_free_result($result);
?> 
<!-- PAGES -->
                    
                <div class="blogpages">
                    <p>Página 1 de 3:</p>
                    <ul>
                        <li><a href="#" class="selected rounded">1</a></li>
                        <li><a href="#" class="rounded">2</a></li>
                        <li><a href="#" class="rounded">3</a></li>
                    </ul>
                </div>
                
                <!-- PAGES END -->
<?
}else{
echo 
"<div class='full_text'>
                    <h5>No se encontraron noticias en esta categoria</h5></div>"
;
}
?>
<!-- BLOGPOST END -->
  #2 (permalink)  
Antiguo 22/11/2011, 06:34
Avatar de portalmana  
Fecha de Ingreso: septiembre-2007
Ubicación: Montevideo-Uruguay
Mensajes: 633
Antigüedad: 17 años, 1 mes
Puntos: 80
Respuesta: Paginacion Resultados

Paginador en PHP

Saludos
__________________
"La imaginación es más importante que el conocimiento. El conocimiento es limitado, mientras que la imaginación no" -- A.Einstein
objetivophp.com,twitter.com/objetivophp
  #3 (permalink)  
Antiguo 22/11/2011, 09:36
 
Fecha de Ingreso: julio-2010
Mensajes: 393
Antigüedad: 14 años, 3 meses
Puntos: 67
Respuesta: Paginacion Resultados

Por aquí dejo mi aporte, es una clase muy fácil de usar, espero te sirva http://www.aprender-a-programar.com/paginacion-php.

Saludos!
__________________
Páginas web de alta calidad y hechas a la medida.
  #4 (permalink)  
Antiguo 22/11/2011, 10:35
 
Fecha de Ingreso: diciembre-2005
Mensajes: 87
Antigüedad: 18 años, 10 meses
Puntos: 3
Respuesta: Paginacion Resultados

Muestra los enlaces de paginacion pero me muestra todos los registros, no me funciona.
  #5 (permalink)  
Antiguo 22/11/2011, 10:35
 
Fecha de Ingreso: diciembre-2005
Mensajes: 87
Antigüedad: 18 años, 10 meses
Puntos: 3
Respuesta: Paginacion Resultados

Cita:
Iniciado por el_quick Ver Mensaje
Por aquí dejo mi aporte, es una clase muy fácil de usar, espero te sirva http://www.aprender-a-programar.com/paginacion-php.

Saludos!
Ahora pruebo este =)
  #6 (permalink)  
Antiguo 22/11/2011, 10:40
Avatar de afrodriguez70  
Fecha de Ingreso: octubre-2011
Ubicación: Tulua-Colombia
Mensajes: 44
Antigüedad: 13 años, 1 mes
Puntos: 2
Respuesta: Paginacion Resultados

<?php
include_once("BD.php");
$link=BD::Conectar();
=>Al inicio de pagina
-------------------------------------------------
---------------------------------------------------
<?php
$registros = 10;
if (!$pagina) {
$inicio = 0;
$pagina = 1;
}
else {
$inicio = ($pagina - 1) * $registros;
}
if($_GET['cedula']==""){
$resultados = mysql_query("SELECT cedula FROM cliente;");
$total_registros = mysql_num_rows($resultados);
$resultados = mysql_query("SELECT * FROM cliente ORDER BY apellido ASC limit $inicio, $registros", $link);
} else if (($_GET['cedula']!="")){
$cedula=$_GET['cedula'];
$resultados = mysql_query("SELECT * FROM cliente WHERE cedula='$cedula';");
$total_registros = mysql_num_rows($resultados);
$resultados = mysql_query("SELECT * FROM cliente WHERE cedula='$cedula' ORDER BY apellido ASC limit $inicio, $registros", $link);
}
$total_paginas = ceil($total_registros / $registros);
$i=0;
while($vector=mysql_fetch_array($resultados))
{
echo "<tr><td><b><div align='center'><span class='Estilo1'>".$vector["cedula"].
"</span></div></b></td><td><div align='center'><span class='Estilo1'>".$vector["nombre"].
"</td><td><div align='center'><span class='Estilo1'>".$vector["apellido"].
"</td><td><div align='center'><span class='Estilo1'>".$vector["tel_cel"].
"</td><td><div align='center'><span class='Estilo1'>".$vector["tel_fijo"].
"</td><td><div align='center'><span class='Estilo1'>".$vector["direccion"].
"</td><td><div align='center'><span class='Estilo1'>".$vector["email"].
"</td><td><div align='center'><span class='Estilo1'>".$vector["fecha_ingreso"].
"</td><td><div align='center'><span class='Estilo1'>".$vector["mensualidad"].
"</td><td><div align='center'><span class='Estilo1'>".$vector["tipo_pago"].
"</td><td><div align='center'><span class='Estilo1'><a href=\"ControlCliente.php?cedula=".$vector["cedula"]."&accion=Ver\">Modificar</a></span></div>".
"</td><td><div align='center'><span class='Estilo1'><a href=\"Confirm_Eliminar_Cliente.php?cedula=".$vect or["cedula"]."&accion=Eliminar\">Eliminar</a></span></div></td>".
"</td><td><div align='center'><span class='Estilo1'><a href='GenerarContrato.php?cedula=".$vector["cedula"]."'><img src='../imagenes/PDF.png' height=70 width=70></a></tr>";
}
?>
</table>
</font>
</FIELDSET>
</div></td>
</tr>
</table>
<table width="20%" border="0" align="center">
<!--Si la pgina actual no es la primera, se muestra el enlace a la pgina anterior-->
<tr><td><?php if(($pagina - 1) > 0) {
echo "<a href='ConsultarCliente.php?pagina=".($pagina-1)."&cedula=".$_GET['cedula']."'><img src=\"../imagenes/anterior.png\" width=\"40\" height=\"30\"></a>";
}
else {
echo "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;& nbsp;";
}
?></td>
<td><?php
// Se saca el listado de pginas mediante un bucle
$pgIntervalo = 3; // Pginas que aparecen antes y despus de la actual
$pgMaximo = ($pgIntervalo*2)+1; // Mximo de pginas en el listado
$pg=$pagina-$pgIntervalo;$i=0;
while ($i<$pgMaximo) {
if ($pg==$pagina) {$strong=array('<strong>','</strong>');} else {$strong=array('','');}
if ($pg>0 and $pg<=$total_paginas) {
echo ''.$strong[0].'<font SIZE=3,5><a href="ConsultarCliente.php?pagina='.$pg.'&cedula=' .$_GET['cedula'].'">' .$pg. '</a></FONT>'.$strong[1]." ";
$i++;
}
if ($pg>$total_paginas) {$i=$pgMaximo;} // Si la pgina que se va a mostrar se pasa de la cantidad de pginas definidas en $total_paginas se para la generacin de elementos de lista
$pg++;
}
?></td>

<td><?php if(($pagina + 1)<=$total_paginas) {

echo " <a href='ConsultarCliente.php?pagina=".($pagina+1)."& cedula=".$_GET['cedula']."'><img src=\"../imagenes/siguiente.png\" width=\"40\" height=\"30\"></a>";
}
else {
echo "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;& nbsp;";
}
?></td></tr>

</table>



<= Bueno aka te dejo mi aporte, esta funcional, bueno aunque solo te mando las partes donde se usa el codigo de paginacion............ espero te sirva =>
__________________
Si el hombre no ha descubierto nada por lo que morir, no es digno de vivir. <<Martin Luther King>>
  #7 (permalink)  
Antiguo 22/11/2011, 19:53
 
Fecha de Ingreso: julio-2010
Mensajes: 393
Antigüedad: 14 años, 3 meses
Puntos: 67
Respuesta: Paginacion Resultados

Esto debería darte una mejor idea de como implementar la clase para paginaciones kpaginate en tu sitio:

Código PHP:
<?
    $id_categoria 
$_GET["id_categoria"];
    include (
"includes/conexion_db.php");

    if(empty(
$id_categoria)){
        
$noticias_por_pagina 10 ;
        
$result mysql_query("select count(*) from noticias where id_categoria = " $id_categoria$link);
        
$total_noticias mysql_result($result00);
        
        include(
'class.kpaginate.php') ;
        
$kp1 = new kpaginate ;
        
$kp1->setTotalItems($total_noticias) ;
        
$kp1->setItemsPerPage($noticias_por_pagina) ;
        
$limit $kp1->getLimit() ;        
        
$result mysql_query("select * from noticias where id_categoria = " $id_categoria " order by fechas desc limit " current($limit) . ", " end($limit), $link);
        
$noticias mysql_fetch_array($result);
        
$kp1->paginate() ;
        echo 
"<pre>" print_r($noticias) ; echo "</pre>" ;
    }
?>
Saludos!
__________________
Páginas web de alta calidad y hechas a la medida.
  #8 (permalink)  
Antiguo 23/11/2011, 08:06
 
Fecha de Ingreso: diciembre-2005
Mensajes: 87
Antigüedad: 18 años, 10 meses
Puntos: 3
Respuesta: Paginacion Resultados

Mal muy mal no soy capaz!!!!!!!!
  #9 (permalink)  
Antiguo 23/11/2011, 09:16
Avatar de memoadian
Colaborador
 
Fecha de Ingreso: junio-2009
Ubicación: <?php echo 'México'?>
Mensajes: 3.696
Antigüedad: 15 años, 4 meses
Puntos: 641
Respuesta: Paginacion Resultados

Claro que si, hasta ahora no he conocido a nadie incapaz de hacer algo si es que se lo propone

una forma facil de paginar muy guarra pero te ayudara a aprender, es contar todos los registros con un

Código MySQL:
Ver original
  1. #esto es para un buscador por ejemplo :S
  2. SELECT count(id) FROM tabla WHERE nombre LIKE %a%

luego haces la seleccion de tus items poniendole un limit

Código MySQL:
Ver original
  1. SELECT id,nombre FROM tabla WHERE nombre LIKE %a% LIMIT 0,10

esto solo te mostrará 10 registros ahora lo bueno.

El paginador lo único que hace es ir tomando la segunda consulta dinamicamente ¿como?

por ejemplo

pasas un valor

$inicio = 0;
$fin = 10;

entonces tu consulta para los primeros 10

Código MySQL:
Ver original
  1. SELECT id,nombre FROM tabla WHERE nombre LIKE %a% LIMIT $inicio,$fin

si vas cambiando los valores te muestra el registro 10 al 20 luego el 20 al 30 etc.

contamos los registros al principio por que asi sabemos cuantas paginas colocar ¿como?

digamos que el primer registro devuelve 124 resultados

y mostramos entre diez serian 13 paginas si redondeamos al numero entero superior

y asi hacemos un for de links

Código PHP:
Ver original
  1. for($i = 1;$i <=13; $i++){
  2.     echo "<a href='page".$i."/'>".$i."</a>";
  3. }

es más o menos la idea, hay que comprender que es lo que se busca.

a esos links hay que pasarles el parametro inicio y fin dinamicamente por $_GET[];
  #10 (permalink)  
Antiguo 23/11/2011, 11:29
 
Fecha de Ingreso: diciembre-2005
Mensajes: 87
Antigüedad: 18 años, 10 meses
Puntos: 3
Respuesta: Paginacion Resultados

Bueno, la paginacion me la hace pero no responde a los enlaces al parecer la variable "pagina" no la esta propagando bien

Código PHP:
<!-- BLOGPOST -->
                        <?
$registros 
1;
if (!
$pagina) {
$inicio 0;
$pagina 1;
}
else {
$inicio = ($pagina 1) * $registros;
}
$id_categoria $_GET[id_categoria];
                                                
//conectamos a la base
include ("includes/conexion_db.php");

//realizamos la busqueda
// Evaluates to true because $var is empty
if (empty($id_categoria)) {
$query=mysql_query("select * from noticias order by fecha desc LIMIT $inicio, $registros"$link);
$contar=mysql_query("select * from noticias order by fecha desc"$link);
}
// Evaluates as true because $var is set
if (isset($id_categoria)) {
$query=mysql_query("select * from noticias where id_categoria='$id_categoria' order by fecha desc LIMIT $inicio, $registros"$link);
$contar=mysql_query("select * from noticias where id_categoria='$id_categoria' order by fecha desc"$link);
}
$total_noticias=mysql_num_rows($contar);
if(
$total_noticias>0){ 
$total_paginas ceil($total_noticias $registros);
$i=0;
//Recogemos las consultas en un array y las mos tramos
while($row=mysql_fetch_array($query))
{
$consulta_categoria=mysql_query("select * from noticias_categorias where id_categoria='".$row[id_categoria]."'",$link);
$categoria_noticia=mysql_fetch_array($consulta_categoria);
$cont_comentarios=mysql_query("select * from noticias_comentarios where id_noticia='$row[id_noticia]'",$link);
$total_comentarios=mysql_num_rows($cont_comentarios);
echo 
"<div class='blogpost'>";
echo 
"<div class='postinfo'>";
echo 
"<div class='infowrap'><span class='iconauthor'></span>Por: ".$row[autor]."</div>";
echo 
"<div class='infodivider'></div>";
echo 
"<div class='infowrap'><span class='icontime'></span>".$row[fecha]."</div>";
echo 
"<div class='infodivider'></div>";
echo 
"<div class='infowrap'><span class='iconcategory'></span>En <a href='noticias.php?id_categoria=".$row[id_categoria]."'>".$categoria_noticia[categoria]."</a></div>";
echo 
"<div class='infodivider'></div>";
echo 
"<div class='infowrap'><span class='iconcomments'></span><a href='detalle_noticia.php?id_noticia=".$row[id_noticia]."#comentarios'>$total_comentarios Comentarios</a></div>";
echo 
"<div class='infodivider'></div>";
echo 
"<div class='twitterwrap' data-text='CIdE - Consultora Integral de Empresas' data-url='http://www.cidesalta.com.ar/detalle_noticia.php?id_noticia=".$row[id_noticia]."'></div>";
echo 
"<div class='infodivider'></div>";
echo 
"<div class='facebookwrap' data-url='http://www.cidesalta.com.ar/detalle_noticia.php?id_noticia=".$row[id_noticia]."'></div>";
echo 
"<br style='clear: left' />";
echo 
"</div>";
echo 
"<div class='blogimage'>";
echo 
"<a href='detalle_noticia.php?id_noticia=".$row[id_noticia]."' data-rel='fadeimg'><img src='images/noticias/".$row[imagen]."' alt='' /></a>";
echo 
"</div>";
echo 
"<div class='blogshadow'></div>";
echo 
"<h5>".$row[titulo]."</h5>";
echo 
"<div class='editorarea'>";
echo 
"<p>".$row[noticia]."</p><br><br>";
echo 
"<span class='blogbutton'><a href='detalle_noticia.php?id_noticia=".$row[id_noticia]."'' class='buttonlight rounded'>Leer +</a></span>";
echo 
"<br style='clear: left' />";
echo 
"</div>";
echo 
"<div class='blogpostdivider'></div>";
echo 
"<br style='clear: left' />";
echo 
"</div>";
echo 
"";
}
mysql_free_result($query);
?> 
<!-- PAGES -->
 <div class="blogpages">
                <p><?php
                
echo "Paginacion $pagina de $total_paginas";
                echo 
"<br>";
                echo 
"Total de Noticias: $total_noticias";
                echo 
"<br>";
                echo 
"Estoy en la pagina: $pagina";
                
?></p><br>
                <ul>
                <li><?php if(($pagina 1) > 0) {
echo 
"<a class='rounded' href='noticias.php?pagina=".($pagina-1)."&id_categoria=$id_categoria'>ANTERIOR</a>";
}
else {
echo 
"&nbsp;";
}
?></li>
<li>
<?php 
// Se saca el listado de pginas mediante un bucle
$pgIntervalo 3// Pginas que aparecen antes y despus de la actual
$pgMaximo = ($pgIntervalo*2)+1// Mximo de pginas en el listado
$pg=$pagina-$pgIntervalo;$i=0;
while (
$i<$pgMaximo) {
if (
$pg==$pagina) {$class='rounded';} else {$strong=array('selected rounded');}
if (
$pg>and $pg<=$total_paginas) {
echo 
'<font SIZE=2><a class="'.$class.'" href="noticias.php?pagina='.$pg.'&id_categoria=' .$_GET['id_categoria'].'">' .$pg'</a></FONT>';
$i++;
}
if (
$pg>$total_paginas) {$i=$pgMaximo;} // Si la pgina que se va a mostrar se pasa de la cantidad de pginas definidas en $total_paginas se para la generacin de elementos de lista
$pg++;
}
?>
</li>
<li>
<?php if(($pagina 1)<=$total_paginas) {

echo 
" <a class='rounded' href='noticias.php?pagina=".($pagina+1)."&id_categoria=$id_categoria'>SIGUIENTE</a>";

else {
echo 
"&nbsp;";
}
?></li>
</ul>
</div>                   
                               
<!-- PAGES END -->
                
<?
}else{
echo 
"<div class='full_text'>
                    <h5>No se encontraron noticias en esta categoria</h5></div>"
;
}
?>
<!-- BLOGPOST END -->
En la seccion NOTICIAS: www.cidesalta.com.ar

Gracias por su ayuda!!!!

Porfa a alguien se le ocurre porke no me pasa de pagina!!!

Si os fijais abajo del todo puse las variables con ECHO para verlas y si se fijan la variable $pagina no cambia cuando se pasa de una pagina a otra.
  #11 (permalink)  
Antiguo 23/11/2011, 12:17
Avatar de javithink  
Fecha de Ingreso: septiembre-2011
Ubicación: Sogamoso, Colombia
Mensajes: 34
Antigüedad: 13 años, 2 meses
Puntos: 4
Respuesta: Paginacion Resultados

Hola... mi aporte al final jejeje

Código PHP:
$registros 1
$pagina $_GET["pagina"];
if (!
$pagina) { 
$inicio 0
$pagina 1

else { 
$inicio = ($pagina 1) * $registros

$id_categoria $_GET[id_categoria]; 
Nada mas te falto recibir el valor de pagina por get...
__________________
Lo que te llevará al éxito no sera el camino sino tus pasos.
www.isourceltda.net
  #12 (permalink)  
Antiguo 23/11/2011, 12:30
 
Fecha de Ingreso: diciembre-2005
Mensajes: 87
Antigüedad: 18 años, 10 meses
Puntos: 3
Respuesta: Paginacion Resultados

Si si ya decia yo que faltaba eso!
No te doy un beso porke estas lejos JAJAJAJAJJAJ

Creo que ya funciona voy a seguir depurando unas cosillas como por ejemplo si solo quiero paginar sin categorias o con categorias.

FUNCIONAL 100%

MIL GRACIAS A TODOS POR LA AYUDA!!!!!

Código PHP:
<!-- BLOGPOST -->
                        <?
$registros 
2
$pagina $_GET["pagina"];
if (!
$pagina) { 
$inicio 0
$pagina 1

else { 
$inicio = ($pagina 1) * $registros

$id_categoria $_GET[id_categoria];
                                                
//conectamos a la base
include ("includes/conexion_db.php");

//realizamos la busqueda
// Evaluates to true because $var is empty
if (empty($id_categoria)) {
$query=mysql_query("select * from noticias order by fecha desc LIMIT $inicio, $registros"$link);
$contar=mysql_query("select * from noticias order by fecha desc"$link);
}
// Evaluates as true because $var is set
if (isset($id_categoria)) {
$query=mysql_query("select * from noticias where id_categoria='$id_categoria' order by fecha desc LIMIT $inicio, $registros"$link);
$contar=mysql_query("select * from noticias where id_categoria='$id_categoria' order by fecha desc"$link);
}
$total_noticias=mysql_num_rows($contar);
if(
$total_noticias>0){ 
$total_paginas ceil($total_noticias $registros);
$i=0;
//Recogemos las consultas en un array y las mos tramos
while($row=mysql_fetch_array($query))
{
$consulta_categoria=mysql_query("select * from noticias_categorias where id_categoria='".$row[id_categoria]."'",$link);
$categoria_noticia=mysql_fetch_array($consulta_categoria);
$cont_comentarios=mysql_query("select * from noticias_comentarios where id_noticia='$row[id_noticia]'",$link);
$total_comentarios=mysql_num_rows($cont_comentarios);
echo 
"<div class='blogpost'>";
echo 
"<div class='postinfo'>";
echo 
"<div class='infowrap'><span class='iconauthor'></span>Por: ".$row[autor]."</div>";
echo 
"<div class='infodivider'></div>";
echo 
"<div class='infowrap'><span class='icontime'></span>".$row[fecha]."</div>";
echo 
"<div class='infodivider'></div>";
echo 
"<div class='infowrap'><span class='iconcategory'></span>En <a href='noticias.php?id_categoria=".$row[id_categoria]."'>".$categoria_noticia[categoria]."</a></div>";
echo 
"<div class='infodivider'></div>";
echo 
"<div class='infowrap'><span class='iconcomments'></span><a href='detalle_noticia.php?id_noticia=".$row[id_noticia]."#comentarios'>$total_comentarios Comentarios</a></div>";
echo 
"<div class='infodivider'></div>";
echo 
"<div class='twitterwrap' data-text='CIdE - Consultora Integral de Empresas' data-url='http://www.cidesalta.com.ar/detalle_noticia.php?id_noticia=".$row[id_noticia]."'></div>";
echo 
"<div class='infodivider'></div>";
echo 
"<div class='facebookwrap' data-url='http://www.cidesalta.com.ar/detalle_noticia.php?id_noticia=".$row[id_noticia]."'></div>";
echo 
"<br style='clear: left' />";
echo 
"</div>";
echo 
"<div class='blogimage'>";
echo 
"<a href='detalle_noticia.php?id_noticia=".$row[id_noticia]."' data-rel='fadeimg'><img src='images/noticias/".$row[imagen]."' alt='' /></a>";
echo 
"</div>";
echo 
"<div class='blogshadow'></div>";
echo 
"<h5>".$row[titulo]."</h5>";
echo 
"<div class='editorarea'>";
echo 
"<p>".$row[noticia]."</p><br><br>";
echo 
"<span class='blogbutton'><a href='detalle_noticia.php?id_noticia=".$row[id_noticia]."'' class='buttonlight rounded'>Leer +</a></span>";
echo 
"<br style='clear: left' />";
echo 
"</div>";
echo 
"<div class='blogpostdivider'></div>";
echo 
"<br style='clear: left' />";
echo 
"</div>";
echo 
"";
}
mysql_free_result($query);
?> 
<!-- PAGES -->
 <div class="blogpages">
               <ul>
                <li><?php 
                
if(empty($id_categoria))
                    {
                    
$enlace='';
                    }
                    else
                    {
                    
$enlace="&id_categoria=$_GET[id_categoria]";
                    }
                if((
$pagina 1) > 0) {
echo 
"<a class='rounded' href='noticias.php?pagina=".($pagina-1)."'$enlace''>ANTERIOR</a>";
}
else {
echo 
"&nbsp;";
}
?></li>
<li>
<?php 
// Se saca el listado de pginas mediante un bucle
$pgIntervalo 3// Pginas que aparecen antes y despus de la actual
$pgMaximo = ($pgIntervalo*2)+1// Mximo de pginas en el listado
$pg=$pagina-$pgIntervalo;$i=0;
while (
$i<$pgMaximo) {
if (
$pg==$pagina) {$class='selected rounded';} else {$class=('rounded');}
if (
$pg>and $pg<=$total_paginas) {
echo 
'<a class="'.$class.'" href="noticias.php?pagina='.$pg.''.$enlace.'">' .$pg'</a>';
$i++;
}
if (
$pg>$total_paginas) {$i=$pgMaximo;} // Si la pgina que se va a mostrar se pasa de la cantidad de pginas definidas en $total_paginas se para la generacin de elementos de lista
$pg++;
}
?>
</li>
<li>
<?php if(($pagina 1)<=$total_paginas) {

echo 
" <a class='rounded' href='noticias.php?pagina=".($pagina+1)."$enlace'>SIGUIENTE</a>";

else {
echo 
"&nbsp;";
}
?></li>
</ul>
</div>
<br style="clear: left" />
<br style="clear: left" />
<!-- PAGES END -->
                
<?
}else{
echo 
"<div class='full_text'>
                    <h5>No se encontraron noticias en esta categoria</h5></div>"
;
}
?>
<div class="contentdivider"></div>
<!-- BLOGPOST END -->
He echo algunos cambios en cuanto a los botones de paginacion mediante CSS y poniendo condiciones en cuanto a los resultados de la busqueda segun la URL que haga la consulta si es con categoria o no.

Soy nuevo en esto php, tiro mas para ASP =)

Creo que no se me da mal no?

REPITO mil gracias por la ayuda chicos.

Dejo el codigo funcional posteado para futuros dudosos como yo jejejej

Última edición por nomakon; 23/11/2011 a las 14:32

Etiquetas: mysql, paginacion, resultados, sql
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

SíEste tema le ha gustado a 1 personas




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