Salve. Vorrei chiedervi se per caso sapreste aiutarmi riguardo una funzione di pagin in php.
Il mio problema riguarda la parte che vi ho evidenziato ovvero che quando mi collego alla pagina (quindi alla prima pagina dell'elenco dei dati) mi viene una nota UNDEFIITED INDEX. Però quando clicco sulla seconda pagina ad esempioe poi ritorno alla prima quella nota non c'è +. Quindi penso sia un fatto che riguarda quel parametro 'page' che non è inizializzato o "esistente" al primo accesso. Sapreste per caso un modo per risolvere questa cosa?? grazie.. p.s. qui sotto c'è il codice..
<?php
include("param.inc");
$connessione= mysql_connect($hostname, $username, $password) or die("<center><font color='#FFFFFF' face='Comic Sans MS'>Problemi con il server</font></center>");
mysql_select_db($databasename, $connessione);
class Pager
{
function getPagerData
($numHits, $limit, $page)
{
$numHits = (int) $numHits;
$limit = max((int) $limit, 1);
$page = (int) $page;
$numPages = ceil
($numHits / $limit);
$page = max($page, 1);
$page = min($page, $numPages);
$offset = ($page - 1) * $limit;
$ret = new stdClass;
$ret->offset = $offset;
$ret->limit = $limit;
$ret->numPages = $numPages;
$ret->page = $page;
return $ret;
}
}
$page = $_GET['page'];
$limit = 10;
$result = mysql_query("select count(*) from utente");
$total = mysql_result($result, 0, 0);
$pager = Pager::getPagerData($total, $limit, $page);
$offset = $pager->offset;
$limit = $pager->limit;
$page = $pager->page;
$query = "select * from utente limit $offset, $limit";
$result = mysql_query($query);
echo("<center><table width='300'>");
while($records = mysql_fetch_array($result))
{
echo "<tr>";
echo "<td width='50' align=center><font color='FFFFFF' face='Comic Sans MS'>$records[username]</td>";
echo "<td width='50' align=center><font color='FFFFFF' face='Comic Sans MS'>$records[nome]</td>";
echo "<td width='100'align=center><font color='FFFFFF' face='Comic Sans MS'>$records[mail]</td>";
}
echo("</table></center>");
echo"<center>
<font color='#FFFFFF' face='Comic Sans MS'>";
if ($page == 1)
echo "Prev";
else
echo "<a href=\"amici.php?page=" . ($page - 1) . "\">Prev</a>";
for ($i = 1; $i <= $pager->numPages; $i++) {
echo " | ";
if ($i == $pager->page)
echo "$i";
else
echo "<a href=\"amici.php?page=$i\">$i</a>";
}
if ($page == $pager->numPages) echo " | Next";
else
echo " | <a href=\"amici.php?page=" . ($page + 1) . "\">Next</a>";
mysql_close($connessione);
?>