Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    n elementi, ne visualizzo k per pagina

    salve a tutti sto cercando di scrivere un algoritmo che riesca, dati n elementi, a visualizzarne k per pagina e crei (alla fine della pagina) una lista delle pagine disponibili, un link per andare all'inizio (prima pagina), uno per andare alla fine (ultima pagina), un link per andare alla pagina precedente e infine uno per andare alla pagina successiva.

    è una cosa molto in uso ovunque nei forum e nei blog per esempio, ma stasera proprio non mi riesce :\

    potete darmi una mano?

  2. #2
    ecco quello che ho fatto io CHE NON FUNZIONA CORRETTAMENTE
    Codice PHP:
    function generate_comments_pages_list($permalink,$ncomm,$actual)

    //$ncomm è il numero totale di commenti
    //$actual è il primo commento stampato nella pagina (da 0 a $ncomm-1)
    global $comments_per_page;

       
    $npage=ceil(($ncomm)/$comments_per_page); //cerco di calcolare un numero totale di pagine
       
    $page=ceil($actual/$comments_per_page); //cerco di calcolare la pagina in cui mi trovo a seconda del primo commento della pagina
       
    //cavolatine varie :)
       
    $first="<<";
       
    $prev="<"
       
    $next=">";
       
    $last=">>";
       
    $list="";

    //se mi trovo alla pagina zero, non stampare << e <   
       
    if ($page!=0){                     
                                           
    $start="[b][url='".$permalink."&first=0']".$first."[/url][/b] ";
                                        
    $start.="[b][url='".$permalink."&first=".(($page-1)*$comments_per_page)."']".$prev."[/url][/b] ";}

    //se mi trovo all'ultima pagina, non stampare > e >> 

       
    if ($page!=$npage){                 
                                           
    $finish="[b][url='".$permalink."&first=".(($page+1)*$comments_per_page)."']".$next."[/url][/b] ";
                                          
    $finish.="[b][url='".$permalink."&first=".($ncomm-$comments_per_page)."']".$last."[/url][/b] ";}


    //stampo la lista delle pagine
       
    for ($i=0;$i<$npage;$i++)
               
    //stampa la pagina attuale senza collegamento
           
    if ($i==$page)                 $list.=($i+1)." ";
           else                           
    $list.="[b][url='".$permalink."&first=".($i*$comments_per_page)."']".($i+1)."[/url][/b] ";    
       
       
    //monta la lista
       
    return $start.$list.$finish;


  3. #3
    ti consiglio di fare una bella ricerca qui nel forum. troverai tantissimi 3d che parlano di paginazione dati, credo che sia proprio quello che ti serve


Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.