Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2002
    Messaggi
    684

    Impaginare 5 pagine alla volta

    Ciao a tutti,
    ho questo script che mi impagina i risultati:

    $paginazione = "Pagine totali : " . $tot_pages . "
    [ ";
    for($i = 1; $i <= $tot_pages; $i++) {
    if($i == $current_page) {
    $paginazione .= $i . " ";
    } else {
    $paginazione .= "<a href=\"{$_SERVER['REQUEST_URI']}&page=$i\" title=\"Vai alla pagina $i\">$i</a> ";
    }
    }
    $paginazione .= "]";


    Vorrei che, invece di stampare a video tutte le pagine presenti nel db, me ne stampasse 5 alla volta, inserendo un segno tipo ">>" nel caso ce ne fossero altre (prima o dopo). Qualcuno sa darmi una mano? Dalle ricerche che ho fatto nel forum non riesco a capire molto.

    Grazie

  2. #2
    L'ho scritta al volo senza provarla, ma prova ad usare una cosa così:
    Codice PHP:
    $lim 5//Le pagine da mostrare prima e dopo

    $paginazione "Pagine totali : " $tot_pages "[ ";

    $prima = ($current_page-$lim <= 1) ? $current_page-$lim;
    $ultima = ($current_page+$lim $tot_pages) ? $tot_pages $current_page+$lim;

    if(
    $prima 1)
         
    $paginazione .= "<a href=\"{$_SERVER['REQUEST_URI']}&page={$prima-1}\" title=\"Vai alla pagina {$prima-1}\"><<</a> ";
    else
         
    $paginazione .= "<< ";

    if(
    $ultima $tot_pages)
         
    $paginazione .= " <a href=\"{$_SERVER['REQUEST_URI']}&page={$ultima+1}\" title=\"Vai alla pagina {$ultima+1}\">>></a>";
    else
         
    $paginazione .= " >>";

    $paginazione .= ($prima 1"<< " :  
    for(
    $i=$prima;$i<=$ultima;$i++) {
        if(
    $i == $current_page)
            
    $paginazione .= $i " ";
        else
            
    $paginazione .= "<a href=\"{$_SERVER['REQUEST_URI']}&page=$i\" title=\"Vai alla pagina $i\">$i</a> ";
    }
    $paginazione .= " ]"
    Coltiva Linux, Windows si pianta da solo!

  3. #3
    Utente di HTML.it
    Registrato dal
    Oct 2002
    Messaggi
    684
    Grazie 1000 per l'aiuto.

    L'ho testato ma mi dà questo errore:

    Parse error: syntax error, unexpected '-', expecting '}' in /home/user/public_html/test/paginazione_2.php on line 11


    Come risolvo?

  4. #4
    Ecco ora dovrebbe funzionare:
    Codice PHP:
    $lim 2//Le pagine da mostrare prima e dopo

    $paginazione "Pagine totali : " $tot_pages "[ ";

    $prima = ($current_page-$lim <= 1) ? $current_page-$lim;
    $ultima = ($current_page+$lim $tot_pages) ? $tot_pages $current_page+$lim;

    if(
    $prima 1)
         
    $paginazione .= "<a href=\"{$_SERVER['REQUEST_URI']}&page=".($prima-1)."\" title=\"Vai alla pagina ".($prima-1)."\"><<</a> ";
    else
         
    $paginazione .= "<< ";

    for(
    $i=$prima;$i<=$ultima;$i++) {
        if(
    $i == $current_page)
            
    $paginazione .= $i " ";
        else
            
    $paginazione .= "<a href=\"{$_SERVER['REQUEST_URI']}&page=$i\" title=\"Vai alla pagina $i\">$i</a> ";
    }

    if(
    $ultima $tot_pages)
         
    $paginazione .= " <a href=\"{$_SERVER['REQUEST_URI']}&page=".($ultima+1)."\" title=\"Vai alla pagina ".($ultima+1)."\">>></a>";
    else
         
    $paginazione .= " >>";
         
    $paginazione .= " ]";
    echo 
    $paginazione
    Coltiva Linux, Windows si pianta da solo!

  5. #5
    Utente di HTML.it
    Registrato dal
    Oct 2002
    Messaggi
    684
    Attualmente ho 1 record nel db ma se appare ugualmente

    Pagine totali : 1[ << 1 >> ]
    Pagine totali : 1[ << 1 >> ]

    (due volte praticamente).

    Ho inserito 3 record ma le pagina sono due, un record per pagina.

    Perchè??

  6. #6
    Utente di HTML.it
    Registrato dal
    Oct 2002
    Messaggi
    684
    Ho risolto il problema dei record, ora li visualizzo tutti ma a video ho sempre un "doppione":

    Pagine totali : 4[ << 1 2 3 >> ]
    Pagine totali : 4[ << 1 2 3 >> ]


    Qualcuno sa aiutarmi a risolvere il problema?

    Grazie

  7. #7
    Utente di HTML.it
    Registrato dal
    Oct 2002
    Messaggi
    684
    up
    :quote:

  8. #8
    Utente di HTML.it
    Registrato dal
    Oct 2002
    Messaggi
    684
    Ho risolto,
    avevo uno stupido

    echo $paginazione;

    di troppo




    Grazie 1000 a loHacker per il suo aiuto!


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.