Je crois que mes amis connaissent la pagination dans notre développement PHP, qu'il s'agisse d'un site Web d'entreprise ou d'un centre commercial. Toute gestion d'arrière-plan est indissociable de la pagination, qui peut être considérée comme un élément indispensable. L'effet de pagination est courant dans les pages Web PHP, mais comment pouvons-nous réaliser la pagination ? Aujourd'hui, nous avons utilisé deux méthodes pour obtenir l'effet de pagination !
Tout d'abord, nous devons préparer un tableau dans la base de données et insérer des données Ce sont tous des prérequis nécessaires. Pas grand chose à dire, comme le montre l'image (le nom de la bibliothèque est). jereh , le nom de la table est n_content) :
Analyse par étapes :
Si nous avons besoin paging , vous devez utiliser "select * from tableName limit num1,num2" ; il s'agit d'une instruction de requête limitée, suivie de deux paramètres, num1 est le numéro à partir duquel commencer la recherche, num2 est le nombre d'informations à rechercher. , Par exemple, je veux trouver trois éléments de données 2, 3 et 4, comme indiqué dans la figure ci-dessous
D'accord, commençons avec les étapes :
1. Créer une fonction pour implémenter la fonction de limitation des requêtes
Tout d'abord, réfléchissons-y Pour implémenter cette fonction, nous devons d'abord connaître le nombre actuel. de pages et combien d'informations nous voulons limiter sur une page. Ceci peut être transmis en utilisant des paramètres formels. Ensuite,
nous définissons pageNum comme étant le nombre de pages et pageSize pour afficher plusieurs éléments de. données sur une page. Dans l'instruction de requête "select * from tableName limit num1,num2",
num1 est (pageNum-1)*pageSize, et num2 est pageSize. Après avoir compris cette relation, ce sera facile. à gérer. Le code est ci-dessous
//分页的函数 function news($pageNum = 1, $pageSize = 3) { $array = array(); $coon = mysqli_connect("localhost", "root"); mysqli_select_db($coon, "jereh"); mysqli_set_charset($coon, "utf8"); // limit为约束显示多少条信息,后面有两个参数,第一个为从第几个开始,第二个为长度 $rs = "select * from n_content limit " . (($pageNum - 1) * $pageSize) . "," . $pageSize; $r = mysqli_query($coon, $rs); while ($obj = mysqli_fetch_object($r)) { $array[] = $obj; } mysqli_close($coon,"jereh"); return $array; }
Dans le code ci-dessus, il convient de noter qu'un espace doit être ajouté après la limite, sinon une erreur se produira <; 🎜>
2. Créez une deuxième fonction pour afficher le nombre total de pages Il n'y a pas de nouveaux points de connaissance là-dedans, ce sont tous des points de connaissance écrits auparavant, il suffit de regarder le code//显示总页数的函数 function allNews() { $coon = mysqli_connect("localhost", "root"); mysqli_select_db($coon, "jereh"); mysqli_set_charset($coon, "utf8"); $rs = "select count(*) num from n_content"; //可以显示出总页数 $r = mysqli_query($coon, $rs); $obj = mysqli_fetch_object($r); mysqli_close($coon,"jereh"); return $obj->num; }
<?php @$allNum = allNews(); @$pageSize = 3; //约定每页显示的信息条数 @$pageNum = empty($_GET["pageNum"])?1:$_GET["pageNum"]; @$endPage = ceil($allNum/$pageSize); //总页数 @$array = news($pageNum,$pageSize); ?>
<table border="1" style="text-align: center" cellpadding="0"> <tr> <td>编号</td> <td>新闻标题</td> <td>来源</td> <td>点击率</td> <td>发布日期</td> </tr> <?php foreach($array as $key=>$values){ echo "<tr>"; echo "<td>{$values->id}</td>"; echo "<td>{$values->title}</td>"; echo "<td>{$values->src}</td>"; echo "<td>{$values->indexs}</td>"; echo "<td>{$values->times}</td>"; echo "</tr>"; } ?> </table>
<a href="?pageNum=1">首页</a> <a href="?pageNum=<?php echo $pageNum==1?1:($pageNum-1)?>">上一页</a> <a href="?pageNum=<?php echo $pageNum==$endPage?$endPage:($pageNum+1)?>">下一页</a> <a href="?pageNum=<?php echo $endPage?>">尾页</a>
Le code total est le suivant :
分页 <table border="1" style="text-align: center" cellpadding="0"> <tr> <td>编号</td> <td>新闻标题</td> <td>来源</td> <td>点击率</td> <td>发布日期</td> </tr> <?php foreach($array as $key=>$values){ echo "<tr>"; echo "<td>{$values->id}</td>"; echo "<td>{$values->title}</td>"; echo "<td>{$values->src}</td>"; echo "<td>{$values->indexs}</td>"; echo "<td>{$values->times}</td>"; echo "</tr>"; } ?> </table><a href="?pageNum=1">首页</a> <a href="?pageNum=<?php echo $pageNum==1?1:($pageNum-1)?>">上一页</a> <a href="?pageNum=<?php echo $pageNum==$endPage?$endPage:($pageNum+1)?>">下一页</a> <a href="?pageNum=<?php echo $endPage?>">尾页</a>
Résumé :
L'effet de pagination doit avoir des données à afficher. Par conséquent, nous devons effectuer certaines opérations de base de données. données dans la base de données, donc tout le monde doit opérer avec précaution !Recommandations associées :
Exemples de principes de pagination en php
Comment implémenter la fonction de pagination de la table d'arrière-plan PHP
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!