PHP développe la fonction de pagination de la page d'accueil d'un système simple de prêt de livres
Lorsque la page principale est terminée, les données de la base de données doivent être affichées via des instructions SQL.
Vous devez utiliser la fonction de pagination pour les afficher ici. Après tout, le nombre affiché sur la première page est limité. .
Nous définissons 5 éléments de données à afficher sur chaque page
$pagesize=5
Pour obtenir l'identifiant, vous vous devez le trier dans l'ordre inverse. La catégorie du titre du livre est en chinois et la fonction urldecode() est nécessaire pour convertir le chinois sous une forme codée.
<?php if(!urldecode($_GET['proid'])){ //urldecode()函數(shù)將 URL 編碼后字符串還原成未編碼的樣子。編碼使用 %## 的格式 $SQL ="SELECT * FROM yx_books order by id desc"; //倒序排列 }else{ $SQL ="SELECT * FROM yx_books where type='".urldecode($_GET['proid'])."'"; //將查詢出來的書目類別中文字轉(zhuǎn)換為編碼形式 } ?>
Obtenez le nombre total de données interrogées, calculez le nombre total de pages, puis jugez la page actuelle Lorsque la page actuelle est inférieure à la première page, la première page s'affiche. le numéro de page actuel est supérieur au nombre total de pages, le nombre total de pages Pages est affiché.
Déterminez quelle donnée commencer à afficher sur chaque page.
<?php $rs=mysqli_query($link,$sql); $recordcount=mysqli_num_rows($rs); //輸出查詢的總數(shù) //mysql_num_rows() 返回結(jié)果集中行的數(shù)目。此命令僅對 SELECT 語句有效。 $pagecount=($recordcount-1)/$pagesize+1; //計算總頁數(shù) $pagecount=(int)$pagecount; $pageno=empty($_GET["pageno"])?'':$_GET["pageno"]; //當前頁 if($pageno=="") //當前頁為空時顯示第一頁 { $pageno=1; } if($pageno<1) //當前頁小于第一頁時顯示第一頁 { $pageno=1; } if($pageno>$pagecount) //當前頁數(shù)大于總頁數(shù)時顯示總頁數(shù) { $pageno=$pagecount; } $startno=($pageno-1)*$pagesize; //每頁從第幾條數(shù)據(jù)開始顯示 ?>
SELECT interroge les instructions dans la base de données puis les affiche en boucle?:
<?php if(!urldecode($_GET["proid"])){ $SQL ="SELECT * FROM yx_books order by id desc limit $startno,$pagesize"; }else{ $SQL ="SELECT * FROM yx_books where type='".urldecode($_GET['proid'])."' order by id desc limit $startno,$pagesize"; } $rs=mysqli_query($link,$sql); ?> <?php if(!empty($rs)){ while($rows=mysqli_fetch_array($rs)) { ?> <tr> <td height="30" align="center" bgcolor="#FFFFFF"><?php echo $rows["id"];?></td> <td align="center" bgcolor="#FFFFFF"><?php echo $rows["name"];?></td> <td align="center" bgcolor="#FFFFFF"><?php echo $rows["price"];?></td> <td align="center" bgcolor="#FFFFFF"><?php echo $rows["uploadtime"];?></td> <td align="center" bgcolor="#FFFFFF"><?php echo $rows["type"];?></td> <td align="center" bgcolor="#FFFFFF"><?php echo $rows["leave_number"];?></td> <td align="center" bgcolor="#FFFFFF" class="line2"></td> </tr> <?php } } ?>
Enfin, les fonctions de clic sur la page d'accueil, la page précédente, la page suivante et la dernière page s’affichent.
Si la page actuelle est la première page, seules la page d'accueil et la page précédente seront affichées.
Lorsque la page actuelle correspond au nombre total de pages, la page d'accueil et la page précédente sont affichées sous forme de liens.
Le reste est affiché sous forme de liens ajoutés normaux
<?php if($pageno==1) { ?> 首頁 | 上一頁 | <?php if($pageno+1<= $pagecount) { ?> <a href="index.php?proid=<?php echo empty($_GET['proid']) ? '' : urlencode($_GET['proid']); ?>&pageno=<?php echo $pageno + 1 ?>">下一頁</a> | <a href="index.php?proid=<?php echo empty($_GET['proid']) ? '' : urlencode($_GET['proid']); ?>&pageno=<?php echo $pagecount ?>">末頁</a> <?php } } else if($pageno==$pagecount) { ?> <a href="index.php?proid=<?php echo urlencode($_GET['proid']);?>&pageno=1">首頁</a> | <a href="index.php?proid=<?php echo urlencode($_GET['proid']);?>&pageno=<?php echo $pageno-1?>">上一頁</a> | 下一頁 | 末頁 <?php } else { ?> <a href="index.php?proid=<?php echo urlencode($_GET['proid']);?>&pageno=1">首頁</a> | <a href="index.php?proid=<?php echo urlencode($_GET['proid']);?>&pageno=<?php echo $pageno-1?>">上一頁</a> | <a href="index.php?proid=<?php echo urlencode($_GET["proid"]);?>&pageno=<?php echo $pageno+1?>" class="forumRowHighlight">下一頁</a> | <a href="?pageno=<?php echo $pagecount?>">末頁</a> <?php } ?> 頁次:<?php echo $pageno ?>/<?php echo $pagecount ?>頁 共有<?php echo $recordcount?>條信息