Maison  >  Article  >  développement back-end  >  Comment configurer l'affichage de la pagination en php

Comment configurer l'affichage de la pagination en php

L
Loriginal
2020-06-01 13:09:383671parcourir

Comment configurer l'affichage de la pagination en php

Comment configurer l'affichage de la pagination en php

Principe de la pagination

Affichage paginé, les données extraites de la base de données mysql sont affichées en segments réguliers. Utilisez la limite dans l'instruction sql pour lier ses données de départ au nombre de pages. En fonction du nombre de pages, accédez à la base de données. récupérer les données

Par exemple : Supposons que le nom de la table de la base de données soit une liste et que 10 informations soient récupérées de chaque page

    第1页   select * from list limit 0,10;
    第2页   select * from list limit 10,10;
    第3页   select * from list limit 20,10;

De ce point de vue, la nième page est sélectionnée * from list limit (n-1)*10,10;

De cette façon, nous obtenons une formule pour obtenir des données en utilisant le nombre de pages :

sélectionnez * dans limite de liste ($page-1)*$pagesize,$pagesize; $page est le numéro de la page actuelle, $pagesize est le nombre d'éléments obtenus par page

Connaissances nécessaires points

1. Fonctions de base de données d'opération

1.1 mysqli_connect(); Se connecter à la base de données, par exemple $link = mysqli_connect('127.0.0.1','root',12345678 ,'bbs');

1.2 mysqli_query() : Obtenez des données par exemple $res = mysqli_query ($link, "select * from list"); Le deuxième paramètre est l'instruction SQL

1.3 mysqli_num_rows() : Vérifiez combien de données ont été obtenues. Par exemple, $num = mysqli_num_rows($res);

1.4 mysqli_fetch_assoc(), ou mysqli_fetch_row() : récupérez une donnée du ensemble de données obtenu, un seul élément à la fois, et le pointeur pointera vers l'élément suivant après la récupération. Par exemple, mysqli_fetch_assoc($res), en plus de fetch_assoc, fetch_row et fetch_array, veuillez vous référer au manuel pour leurs différences spécifiques.

La limite 1,5 est utilisée pour exploiter les données dans la base de données, la limite est la position de départ et le nombre d'opérations. Par exemple, pour récupérer des nombres dans la base de données, sélectionnez * dans la liste limite 10,10 ;
<.>

2. Autres connaissances connexes

2.1 $_SERVER['REQUEST_URI'] obtient l'URL de la page actuelle Par exemple, l'URL de https://i.cnblogs.com/EditPosts. aspx?opt=1 est /EditPosts. aspx?opt=12.2 parse_url() : analyse l'url et renvoie chaque composant de l'url. Si le deuxième paramètre n'est pas écrit, les clés possibles dans le tableau renvoyé sont les suivantes :

schéma - Tel que http,
hôte

port
utilisateur
pass
chemin
requête - après le point d'interrogation
fragment - après le symbole de hachage #


Processus de mise en œuvre

1 Obtenez la chaîne d'URL actuelle et analysez-la avec parse_url pour obtenir le tableau d'URL

<.>2. Connectez-vous au serveur et obtenez la page de liste à afficher. Collection de contenu, comptez le nombre total d'éléments affichés, puis calculez le nombre total de pages de contenu

3. soumis, sinon, la valeur par défaut est la première page $pageval

4. Calculer Attribuez la position de départ de la limite à la variable $page

5 Utilisez $page et $pageSize pour récupérer. données de la base de données

6. Boucle pour obtenir facilement la collecte de données, et la sortie est affichée sur la page

Le code spécifique est le suivant

$url = $_SERVER[&#39;REQUEST_URI&#39;];
$url = parse_url($url);
$url = $url[&#39;path&#39;];
$pageSize = 4;//连接服务器$link = mysqli_connect(&#39;127.0.0.1&#39;,&#39;root&#39;,12345678,&#39;bbs&#39;);
$res = mysqli_query($link,&#39;select * from fenye&#39;);
$num = mysqli_num_rows($res);
$pageNum = ceil($num/$pageSize);//判断页面是否是提交状态if ( isset($_GET[&#39;page&#39;]) && $_GET[&#39;page&#39;] >1) {
    $pageVal = $_GET[&#39;page&#39;];
}else {
    $pageVal = 1;
}//计算起始位置$page = ($pageVal-1)*$pageSize;//去数据库取数据$res = $mysqli_query($link,"select * from fenye limit $page,$pageSize");//如果$res有值,则循环便利结果展示输出在页面if ($res) {    while( $row = mysqli_fetch_assoc($res) ) {    echo $row[&#39;name&#39;]. &#39;|&#39;.$row[&#39;age&#39;].&#39;<br/>&#39;;
    }
}//html添加页数部分<a href="?page=1">1</a>;
<a href="?page=2">2</a>;
<a href="?page=3">3</a>;
<a href="?page=4">4</a>;
<a href="?page=5">5</a>;
总共<?php echo $pageNum; ?>页,当前在<?php echo $pageVal;?>页

Tutoriel recommandé : "

Tutoriel 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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn