Ciao a tutti,
ho seguito un tutorial per creare una impaginazione dati del tipo di Google.
Ha un file config.php di cui vi allego il codice:
<?php
$servername='localhost'; // Your MySql Server Name or IP address here
$dbusername='gabry'; // Login user id here
$dbpassword='gabry'; // Login password here
$dbname='sql_tutorial'; // Your database name here
connecttodb($servername,$dbname,$dbusername,$dbpas sword);
function connecttodb($servername,$dbname,$dbuser,$dbpasswor d)
{
global $link;
$link=mysql_connect ("$servername","$dbuser","$dbpassword");
if(!$link){die("Could not connect to MySQL");}
mysql_select_db("$dbname",$link) or die ("could not open db".mysql_error());
}
?>
---------------------------------------------------------------------
Sono presenti nella tabella student_adv ben 56 record. Voglio visualizzare 10 record per pagina.
Le pagine sono 6: quindi 6x10=60(di cui 56 sono i record)
Vi allego il codice della pagina php_paging.php:
<?
require "config.php"; // All database details will be included here
$page_name="php_paging.php"; // If you use this code with a different page ( or file ) name then change this
if(!isset($start)) {
$start = 0;
}
$eu = ($start -0);
$limit = 10;
$this = $eu + $limit;
$back = $eu - $limit;
$next = $eu + $limit;
$query2=" SELECT * FROM student_adv ";
$result2=mysql_query($query2);
echo mysql_error();
$nume=mysql_num_rows($result2);
$bgcolor="#f1f1f1";
echo "<TABLE width=50% align=center cellpadding=0 cellspacing=0> <tr>";
echo "<td bgcolor='dfdfdf' ><font face='arial,verdana,helvetica' color='#000000' size='4'>ID</font></td>";
echo "<td bgcolor='dfdfdf' ><font face='arial,verdana,helvetica' color='#000000' size='4'>Name</font></td>";
echo "<td bgcolor='dfdfdf' ><font face='arial,verdana,helvetica' color='#000000' size='4'>Class</font></td>";
echo "<td bgcolor='dfdfdf'><font face='arial,verdana,helvetica' color='#000000' size='4'>Mark</font></td></tr>";
$query=" SELECT * FROM student_adv limit $eu, $limit ";
$result=mysql_query($query);
echo mysql_error();
while($noticia = mysql_fetch_array($result))
{
if($bgcolor=='#f1f1f1'){$bgcolor='#ffffff';}
else{$bgcolor='#f1f1f1';}
echo "<tr>";
echo "<td align=left bgcolor=$bgcolor id='title'><font face='Verdana' size='2'>$noticia[id]</font></td>";
echo "<td align=left bgcolor=$bgcolor id='title'><font face='Verdana' size='2'>$noticia[name]</font></td>";
echo "<td align=left bgcolor=$bgcolor id='title'><font face='Verdana' size='2'>$noticia[class]</font></td>";
echo "<td align=left bgcolor=$bgcolor id='title'><font face='Verdana' size='2'>$noticia[mark]</font></td>";
echo "</tr>";
}
echo "</table>";
echo "<table align = 'center' width='50%'><tr><td align='left' width='20%'>";
if($back>=0){
print "<font face='Verdana' size='2'>PREV</font>";
}
echo "</td><td align=center width='30%'>";
$l=1;
for($i=0; $i < $nume;$i=$i+$limit){
if($i <> $eu){
echo " <font face='Verdana' size='2'>$l</font> ";
}
else { echo "<font face='Verdana' size='4' color=red>$l</font>";}
$l=$l+1;
}
echo "</td><td align='right' width='30%'>";
if($this < $nume){
print "<font face='Verdana' size='2'>NEXT</font>";
}
echo "</td></tr></table>";
?>
-----------------------------------------------------------------
Il problema è che i links non visualizzano gli altri record. Come faccio? Dovrei far corrispondere il record n.11 al primo record della seconda pagina cosa che dovrebbe fare la clausola limit.
E pensare che doveva essere la base per costruire il mio primo sistema di paging.
Ciao e grazie