- Home
- Categorie
- Coding e Sistemistica
- PHP
- Paginazione risultati di una query
-
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 pageif ($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.
-
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!
-
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!