2009-11-21 4 views
-1

quelqu'un peut me aider avec ce code? Les liens suivants et précédents ne fonctionnent paspaging les liens suivants et précédents ne fonctionnent pas!

$limit=20; 
mysql_connect("localhost","root",""); 
mysql_select_db("autoschool") or die("Unable to select database"); 
$query = "select * from student"; 
$numresults=mysql_query($query); 
$numrows=mysql_num_rows($numresults); 
if ($numrows == 0) 
{ 
echo "empty"; 
} 
if (empty($s)) { 
$s=0; 
} 
$query .= " limit $s,$limit"; 
$result = mysql_query($query) or die("Couldn't execute query"); 
$count = 1 + $s ; 
while ($row= mysql_fetch_array($result)) { 
$title = $row["id"]; 
echo "$count.)$title"." 
" ; 
$count++ ; 
} 
$currPage = (($s/$limit) + 1); 
echo " 
"; 
if ($s>=1) { // bypass PREV link if s is 0 
$prevs=($s-$limit); 
print " << 
Prev 10&nbsp "; 
} 
$pages=intval($numrows/$limit); 
if ($numrows%$limit) { 
$pages++; 
} 
if (!((($s+$limit)/$limit)==$pages) && $pages!=1) { 
$news=$s+$limit; 
echo " Next 20 >>"; 
} 
$a = $s + ($limit) ; 
if ($a > $numrows) { $a = $numrows ; } 
$b = $s + 1 ; 
echo " 
Showing results $b to $a of $numrows 
"; 
+0

4 espaces avant une ligne pour la faire apparaître correctement formatée. – scragar

+0

Le code n'est pas clair. Il y a des caractères inappropriés dans les déclarations d'écho. C'est peut-être pourquoi les liens ne fonctionnent pas. – pavium

Répondre

0

Votre « 20 suivant » et « prev 10 » sont simplement des affichages de texte. Ils ne sont pas des liens pour commencer. De plus, vous n'avez aucun moyen de gérer les entrées. Il semble que votre exemple soit incomplet.

1

OMG, par où commencer?

Tout d'abord, vous ne traitez pas $s au début, donc l'instruction LIMIT sera toujours 0,20.

Essayez quelque chose comme:

if (isset ($_GET['page'])){ 
    $s=round($_GET['page']; 
    if($s<0) { 
    $s=0; 
    } 
} 
else { 
    $s=0; 
} 

... 

$query .= " LIMIT ".($s*$limit).",$limit"; 

Ensuite, vous devez ajouter des liens précédent et suivant le texte:

if ($s>0) { // bypass PREV link if s is 0 
    echo '<a href="myscript.php?page='.($s-1).'">Prev </a>'; 
} 

... 


    echo echo '<a href="myscript.php?page='.($s+1).'">Next </a>'; 

... 

Pour être honnête, je commence à nouveau à partir de zéro si je vous étais, le code est très salissant. Écrivez le pseudo-code pour planifier la logique d'abord, puis le code.