• User

    Paginazione risultati di una query

    Ehi ragazzi...ho provato a personalizzare lo script del seguente tutorial:http://www.webmasterpoint.org/php/tutorial/134-paginazione-in-php.asp
    Ma ci deve essere qualche errore perchè la pagina non mi si proprio apre...qualcuno sa aiutarmi?
    [php]
    <body>
    <?php
    // imposto quanti risultati x pagina
    $rowsPerPage = 15;
    // impostiamo di default di mostrare x prima la prima pagina
    $pageNum = 1;
    // se $_GET['page'] è definito, lo si usa come page namber
    if(isset($_GET['page']))
    {$pageNum = $_GET['page'];}
    // conto l' offset
    $offset = ($pageNum - 1) * $rowsPerPage;
    $mysqli = new mysqli('localhost', 'root', ...,...);
    if ($mysqli == false)
    {die ("Errore nella connessione, verificare i parametri nel file config.inc.php");}
    else {
    $query = " SELECT Autore, Titolo, Album FROM testo ORDER BY Autore, Titolo LIMIT $offset, $rowsPerPage";
    $result = mysqli->query($query);
    // mostro gli autori
    while($row = $result->fetch_assoc())
    {echo $row['Autore'];
    echo "<br/>";
    }

    // quanti valori abbiamo nel DB
    $result2 = $mysqli->query("SELECT Autore, Titolo, Album FROM testo");
    $numrows = $result2->num_rows;
    // quante pagine sono?
    $maxPage = ceil($numrows/$rowsPerPage);
    // crea link per accedere ad ogni pagina
    $self = $_SERVER['PHP_SELF'];

    // Creo i links Previous e Next
    // e quelli First page e Last page

    if ($pageNum > 1)
    {$page = $pageNum - 1;
    $prev = " <a href="$self?page=$page">[Prev]</a> ";
    $first = " <a href="$self?page=1">[First Page]</a> ";
    }
    else
    {$prev = ' '; // se siamo nella 1° pag non mostriamo Prev
    $first = ' '; // e neanche il link alla 1° pag
    }
    if ($pageNum < $maxPage)
    {$page = $pageNum + 1;
    $next = " <a href="$self?page=$page">[Next]</a> ";
    $last = " <a href="$self?page=$maxPage">[Last Page]</a> ";
    }
    else
    {$next = ' '; // siamo nell' ultima pag, nn mostriamo Next
    $last = ' '; // siamo nell' ultima pag, nn mostriamo il link Last
    }
    // mostra i links di navigazione
    echo $first . $prev ." Stia guardando la pagina $pageNum of $maxPage pages " . $next . $last;
    }
    $mysqli->close();
    ?>
    </body>
    </html> [/php]
    Help!!! 😢
    PS: uso php e mysql.


  • User Attivo

    c'è un piccolo errore sintattico nel codice, forse è quella la causa.
    (Ultime righe del codice che riporto qui sotto)

    [php]
    if ($pageNum > 1)
    {$page = $pageNum - 1;
    $prev = " <a href="$self?page=$page">[Prev]</a> ";
    $first = " <a href="$self?page=1">[First Page]</a> ";
    }
    else
    {
    $prev = ' '; // se siamo nella 1° pag non mostriamo Prev
    $first = ' '; // e neanche il link alla 1° pag
    }
    if ($pageNum < $maxPage)
    //...
    [/php]Sostituisci con:

    [php]
    if ($pageNum > 1)
    {$page = $pageNum - 1;
    $prev = " <a href="$self?page=$page">[Prev]</a> ";
    $first = " <a href="$self?page=1">[First Page]</a> ";
    }
    else
    {
    $prev = " "; // se siamo nella 1° pag non mostriamo Prev
    $first = " "; // e neanche il link alla 1° pag
    }
    if ($pageNum < $maxPage)
    [/php]Ciao!


  • User

    Intendi semplicemente le " invece delle ' ? Purtoppo non funziona lo stesso! Avevo provato anche ad inserire le backslash...sai com'è...non si sa mai...ma niente! Infatti ho postato quel codice, già dopo la modifica, e tra l'altro ci mancava pure una . Comunque grazie, ma non è quello l'errore purtroppo. Grazie ancora!