Foros del Web » Programando para Internet » PHP »

Duda con paginacion y consulta MySql

Estas en el tema de Duda con paginacion y consulta MySql en el foro de PHP en Foros del Web. Hola de nuevo amigos colegas! el problema es el siguiente... Tengo un top ten con locales comerciales.. y lo tengo con una paginacion estandar, el ...
  #1 (permalink)  
Antiguo 21/10/2010, 15:19
Avatar de Heiroon  
Fecha de Ingreso: junio-2010
Ubicación: Caracas, Venezuela - Por ahora...
Mensajes: 495
Antigüedad: 13 años, 11 meses
Puntos: 63
Exclamación Duda con paginacion y consulta MySql

Hola de nuevo amigos colegas!

el problema es el siguiente... Tengo un top ten con locales comerciales.. y lo tengo con una paginacion estandar, el problema esta en como hago q seleccione solo los 10 mas votados si el limite ya esta definido para la paginacion..

les dejo el codigo a ver si me pueden ayudar... lo unico q necesito es saber como proceso la consulta de modo tal que no me seleccione todos los locales y me mantenga el limite de la paginacion..


parte superior:
Código PHP:
Ver original
  1. $sql="SELECT * FROM g_local ORDER BY rating_local DESC";
  2.                      //echo $sql;
  3.                      $num= 0;
  4.                      $registros = 2;
  5.                      $divdestino = "refresh_container";
  6.                      $ruta_p = "cont_gastro/pag_tt.php?";
  7.                      // se asigna el valoir del GET[pagina] a la variable pagina
  8.                      $pagina = $_REQUEST["pagina"];
  9.                      // se verifica si llego algo o esta vacio
  10.                      if (!$pagina) {
  11.                      // si esta vacio se inicializan las variables
  12.                      $inicio = 0;
  13.                      $pagina = 1;
  14.                      } else {
  15.                      // si no se manda a mostrar la pagina que toca y asi consultar los registros que van para esa pagina
  16.                      $inicio = ($pagina - 1) * $registros; }   
  17.                      $result=mysql_query($sql)or die(mysql_error());
  18.                      $total_registros = mysql_num_rows($result);
  19.                      $total_paginas= ceil($total_registros/$registros);
  20.                      if($pagina>$total_paginas){ $pagina=$total_paginas; }
  21.                      $sql .= "  LIMIT ".$inicio.", ".$registros." ";
  22.                      $result=mysql_query($sql)or die(mysql_error());
  23.                      while($local=mysql_fetch_array($result)){
  24.                      extract($local);?>


parte html+php:

Código PHP:
Ver original
  1. <div class="local_content" style="margin:45px 0px;">
  2.                                        
  3.                                         <div class="info_left">
  4.                                             <img src="img_gastronomia/<?=$imagen_local?>" style="float:left; width:189px; height:212px"/>
  5.                                                                                        
  6.                                         </div>
  7.                                        
  8.                            <div class="info_right" style="background-color:#FEE7C5; height:212px;">
  9.                            <div align="left"><font size="+1" style="margin-left:18px; font-weight:bold"><?=strtoupper($nombre_local)?> /// </font><?=$tipo_local?></div>
  10.                             <p>
  11.                                 <strong>Especialidad:</strong> <?=$especialidad_local?><br />
  12.                                 <strong>Horarios:</strong> <?=$horario_local?><br />
  13.                                 <strong>Dirección:</strong> <?=substr(utf8_encode($direccion_local),0,199)?><br />
  14.                                 <strong>Tel&eacute;fonos:</strong> <?=$telefono_local?> <? if($fax_local!=""){?>/ <strong>Fax:</strong><?=$fax_local?><? } ?><br />
  15.       <? if($email_local!=""){?><strong>Email:</strong> <?=$email_local?><br /><? } ?>
  16.      <? if($enlace_local!="http://" && $enlace_local!=""){?><strong>Enlace:</strong>&nbsp;<a href="<?=$enlace_local?>" target="_blank"><?=$enlace_local?></a><br /><? } ?>
  17.                             </p>
  18.                             <div id="puntaje" align="left" style="margin-left:30px;">
  19.                             <? for($i=0; $i<=$rating_local; $i++){?>   
  20.                                 <img src="img_comunes/star_by_star.jpg" />
  21.                             <? } ?>    
  22.                             </div>
  23.                            </div>
  24.                                        
  25.                                    
  26.                                    
  27.                                    
  28.                                    <? if(!$num&#37;2){ ?>
  29.                                         <img src="img_comunes/cine_separador.jpg" style="margin:15px 0px 0px;" />
  30.                                    <? } ?>
  31.                                     <div class="clearboth"></div>
  32.                                    
  33.                                     <? $num++; } ?>
  34.                                     <!-- OTRO -->
  35.                                     </div>
  36.                                         <div class="clearboth"></div>

Pie de paginacion:

Código PHP:
Ver original
  1. <?  
  2. $tpg=10;
  3. if(($tpg%2) != 0){ $men= round($tpg/2)-1;   $men2= round($tpg/2)-1; }else{ $men = round($tpg/2); $men2 = round($tpg/2)-1; }
  4. if($orden!=""){ $ord=$orden."&"; }
  5. $comj="";
  6. $href1= "javascript:llamarasincrono('".$ruta_p."pagina=";
  7. $href2=$filtro.$ord."' ,'".$divdestino."' );";
  8. // editar total de registros
  9. if($total_paginas>1)
  10. {
  11. ?><div  style="display:inline; float:left; padding-right:10px; width:80px;">Pagina <?=$pagina?> de <?=$total_paginas?> </div> <?
  12.  
  13. echo "<div style='display:inline;margin-left:10%; float:left; text-align:center'>";
  14.     if(( $pagina - 1) > 0){
  15.         $ant= $pagina - 1;
  16.         ?><a href="<?=$href1."1".$href2?>" style="text-decoration:none;">&laquo;Primero</a> &nbsp;&nbsp; <a href="<?=$href1.$ant.$href2?>" style="text-decoration:none;">&lt;Anterior</a><?
  17.     }else{
  18.         ?><span style="color:#ccc;">&laquo;Primero</span> &nbsp;&nbsp; <span style="color:#ccc;">&lt;Anterior</span><?
  19.     } ?>&nbsp;&nbsp;&nbsp;&nbsp;<?
  20.     if ($total_paginas <= $tpg){
  21.         for($i=1; $i<=$total_paginas; $i++){
  22.             if ($i==$pagina){ echo $comj." <span class='selected'>".$pagina."</span> ";     }else{ echo $comj; ?><a style='text-decoration:none;' href="<?=$href1.$i.$href2?>"><?=$i?></a><? }
  23.             $comj="-";
  24.         }
  25.     }else{
  26.         if($pagina <= (round($tpg/2))){
  27.             for($i=1; $i<=$tpg; $i++){
  28.                     if ($i==$pagina){ echo $comj." <span class='selected'>".$pagina."</span> "; }else{ echo $comj; ?><a style='text-decoration:none;' href="<?=$href1.$i.$href2?>"><?=$i?></a><? }
  29.                     $comj="-";
  30.             }
  31.         }else if($pagina >=($total_paginas-(round($tpg/2))) ){
  32.             $ini=$total_paginas-($tpg-1);
  33.             for($i=$ini; $i<=$total_paginas; $i++){
  34.                 if ($i==$pagina){ echo $comj." <span class='selected'>".$pagina."</span> "; }else{ echo $comj;?><a style='text-decoration:none; ' href="<?=$href1.$i.$href2?>"><?=$i?></a><? }
  35.                 $comj="-";
  36.             }
  37.         }else{
  38.             for($i=($pagina-$men); $i<=($pagina+$men2); $i++){
  39.                 if ($i==$pagina){ echo $comj." <span class='selected'>".$pagina."</span> "; }else{  echo $comj; ?><a style="text-decoration:none;" href="<?=$href1.$i.$href2?>"><?=$i?></a><? }        
  40.                 $comj="-";         
  41.             }
  42.         }
  43.     }
  44.     ?>&nbsp;&nbsp;&nbsp;&nbsp;<?
  45.     if(($pagina + 1)<= $total_paginas){
  46.         $sig= $pagina + 1;
  47.         ?><a href= "<?=$href1.$sig.$href2?>"  style="text-decoration:none;">Siguiente&gt;</a>&nbsp;&nbsp; <a href= "<?=$href1.$total_paginas.$href2?>" style="text-decoration:none;">Ultimo&raquo;</a><?
  48.     }else{
  49.         ?><span style="color:#ccc;">Siguiente&gt;&nbsp;&nbsp;</span> <span style="color:#ccc;"> Ultimo&raquo;</span><?
  50.     }
  51.     echo "</div>";
  52.    
  53. $inil=$inicio+1;
  54. if($total_registros< $registros){ $finl=$total_registros; }else{ $finl=$inicio+$registros; }
  55.  ?>
  56.  <div  style="display:inline; float:right;  width:160px;">Viendo <?=$inil?> a <?=$finl?> de <?=$total_registros?> Items </div><?
  57. }                      
  58.  
  59. ?>

Cualquier otra cosa q necesiten me dicen! Gracias de antemano!
  #2 (permalink)  
Antiguo 24/10/2010, 11:53
Avatar de repara2  
Fecha de Ingreso: septiembre-2010
Ubicación: München
Mensajes: 2.445
Antigüedad: 13 años, 7 meses
Puntos: 331
Respuesta: Duda con paginacion y consulta MySql

Hola Heiroon, postea la estructura de la tabla (y algunos datos) para poder sacar la select. Saludos,

Etiquetas: mysql, paginacion
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 10:18.