- Home
- Categorie
- Coding e Sistemistica
- PHP
- paginazione php
-
paginazione php
buonasera a tutti,
ho modificato un esempio di paginazione che ho trovato su internet e stavo cercando di adattarlo al mio esempio (che provo in locale).
Il problema è il seguente....quando accedo per la prima volta alla pagina page.php(dove è contenuto tutto il codice) mi da un errore nella riga 42
cioè --> $current_page = (!$HTTP_GET_VARS['page']) ? 1 : (int)$HTTP_GET_VARS['page']; ma i links alle pagine seguenti me le visualizza correttamente!!!!!ma se accedo alla seconda pagina e poi via via fino all'ultima, tornando alla prima il risultato è corretto senza l'errore iniziale.
Quale potrebbe essere il problema???
grazie
<?php
// connessione al database
mysql_connect("localhost", "root", "") or die("Connessione fallita !");// selezione del DB
mysql_select_db("progetto") or die("Selezione del DB fallita !");// esecuzione prima query
$count = mysql_query("SELECT COUNT(*) FROM personale");
$res_count = mysql_fetch_row($count);// numero totale di records
$tot_records = $res_count[0];// risultati per pagina(secondo parametro di LIMIT)
$per_page = 1;// numero totale di pagine
$tot_pages = ceil($tot_records / $per_page);// pagina corrente
$current_page = (!$HTTP_GET_VARS['page']) ? 1 : (int)$HTTP_GET_VARS['page'];// primo parametro di LIMIT
$primo = ($current_page - 1) * $per_page;echo "<div align="center">\n<table>\n";
// esecuzione seconda query con LIMIT
$query_limit = mysql_query("SELECT id_per, nome FROM personale LIMIT $primo, $per_page");
while($results = mysql_fetch_array($query_limit)) {
echo " <tr>\n <td>";
echo "<a href="dettagli_personale.php?id_per=" . $results['id_per'] . "">" . $results['nome'] . "</a>
";
echo "</td>\n </tr>\n";
}// La paginazione
$paginazione = "Totale risultati: " . $tot_pages . "
<br>[";
for($i = 1; $i <= $tot_pages; $i++) {
if($i == $current_page) {
$paginazione .= $i . " ";
} else {
$paginazione .= "<a href="?page=$i" title="Vai alla pagina $i">$i</a> ";
}
}
$paginazione .= "]";// in questa cella inseriamo la paginazione
echo " <tr>\n <td height="50" valign="bottom" align="center">$paginazione</td>\n";echo " </tr>\n</table>\n</div>";
mysql_close();
?>
-
Ciao, nella query limit prova a selezionare tutto il record non i 2 campi. Metti l'asterisco.
-
ciao,
prova così:
$current_page = isset($_GET['page']) ? $_GET['page'] : 1;
-
ciao,
grazie per aver risposto!!
mi da questo errore...
notice Undefined index: id in c:\programmi\easyphp1-7\www\provasito\paging2.php on line 34 (cioè la riga di cui ti parlavo)
-
ho aperto topic su paginazione tosta qui:
http://www.giorgiotave.it/forum/php-mysql/24096-paginazione-continuativa-ordinata-per-id-per-data-per-altro.html