Comment utiliser PHP et CGI pour implémenter des fonctions de pagination et de tri de sites Web

PHPz
Libérer: 2023-07-21 13:40:01
original
1638 Les gens l'ont consulté

Comment utiliser PHP et CGI pour implémenter les fonctions de pagination et de tri du site Web

Avant-propos
La pagination et le tri du site Web sont des fonctions très courantes et importantes, notamment pour l'affichage et le traitement de grandes quantités de données. Dans cet article, nous utiliserons la technologie PHP et CGI (Common Gateway Interface) pour implémenter les fonctions de pagination et de tri du site Web, avec des exemples de code correspondants.

1. Implémentation de la fonction de pagination
La fonction de pagination obtient principalement une plage spécifique de données en interrogeant la base de données et affiche les données en fonction du numéro de page spécifié et de la quantité d'affichage par page. Voici les étapes pour implémenter la fonction de pagination :

  1. Obtenez la quantité totale de données
    Avant d'exécuter la requête, nous devons savoir combien de données il y a dans la base de données. La quantité totale de données peut être obtenue grâce au code suivant :

    $query = "SELECT COUNT(*) as total FROM table";
    $result = mysqli_query($conn, $query);
    $row = mysqli_fetch_assoc($result);
    $total = $row['total'];
    Copier après la connexion
  2. Définissez le nombre de données affichées par page et le nombre total de pages
    Selon les besoins de l'utilisateur, vous pouvez définir le nombre de données affichées par page, comme 10 ou 20. En fonction de la quantité totale de données et du nombre affiché sur chaque page, le nombre total de pages peut être calculé :

    $per_page = 10; // 每页显示数量
    $total_pages = ceil($total / $per_page); // 总页数
    Copier après la connexion
  3. Obtenir le numéro de page actuel
    Les utilisateurs peuvent spécifier le numéro de page actuel via des paramètres d'URL ou d'autres méthodes. Le code suivant peut obtenir le numéro de page actuel spécifié par l'utilisateur :

    $current_page = isset($_GET['page']) ? $_GET['page'] : 1; // 当前页码,默认为第一页
    Copier après la connexion
  4. Calculer le décalage
    En fonction du numéro de page actuel et du nombre d'affichages par page, le décalage lors de l'interrogation des données peut être calculé :

    $offset = ($current_page - 1) * $per_page; // 偏移量
    Copier après la connexion
  5. Exécutez la requête
    Enfin, en fonction du décalage calculé et du nombre affiché par page, exécutez la requête et obtenez les données dans la plage spécifiée. L'exemple de code suivant illustre le processus de requête :

    $query = "SELECT * FROM table LIMIT $offset, $per_page";
    $result = mysqli_query($conn, $query);
    while ($row = mysqli_fetch_assoc($result)) {
      // 处理数据
    }
    Copier après la connexion
  6. Afficher les liens de pagination
    Afin de permettre aux utilisateurs de parcourir et de changer facilement de page, nous devons afficher les liens de pagination dans la page. L'exemple de code suivant montre comment générer des liens de pagination :

    for ($i = 1; $i <= $total_pages; $i++) {
      echo "<a href='?page=$i'>$i</a> ";
    }
    Copier après la connexion

Voici les étapes et les exemples de code pour utiliser PHP et CGI pour implémenter la fonctionnalité de pagination de sites Web. Ensuite, nous présenterons comment implémenter la fonction de tri du site Web.

2. Implémentation de la fonction de tri
La fonction de tri est utilisée pour trier les données affichées. Les utilisateurs peuvent choisir de trier par ordre croissant ou décroissant selon un certain champ en fonction de leurs propres besoins. Voici les étapes et les exemples de code pour implémenter la fonction de tri :

  1. Obtenez le champ de tri et la méthode de tri sélectionnés par l'utilisateur
    L'utilisateur peut spécifier le champ de tri et la méthode de tri via des paramètres d'URL ou d'autres méthodes. Le code suivant peut obtenir le champ de tri et la méthode de tri sélectionnés par l'utilisateur :

    $sort_field = isset($_GET['sort_field']) ? $_GET['sort_field'] : 'id'; // 排序字段,默认为id
    $sort_order = isset($_GET['sort_order']) ? $_GET['sort_order'] : 'asc'; // 排序方式,默认为升序
    Copier après la connexion
  2. Construire une instruction SQL de tri
    Construire l'instruction SQL correspondante en fonction du champ de tri et de la méthode de tri sélectionnés par l'utilisateur. L'exemple de code suivant montre comment construire une instruction SQL de tri :

    $order_by = "ORDER BY $sort_field $sort_order";
    Copier après la connexion
  3. Execute query
    Enfin, sur la base de l'instruction SQL de tri construite, exécutez la requête et obtenez les données triées. L'exemple de code suivant montre le processus de requête :

    $query = "SELECT * FROM table $order_by";
    $result = mysqli_query($conn, $query);
    while ($row = mysqli_fetch_assoc($result)) {
      // 处理数据
    }
    Copier après la connexion
  4. Afficher le lien de tri
    Afin de permettre aux utilisateurs de changer facilement de méthode de tri, nous devons afficher le lien de tri sur la page. L'exemple de code suivant montre comment générer des liens de tri :

    echo "<a href='?sort_field=id&sort_order=asc'>按ID升序排序</a> ";
    echo "<a href='?sort_field=id&sort_order=desc'>按ID降序排序</a> ";
    Copier après la connexion

Avec les étapes et les exemples de code ci-dessus, nous pouvons facilement implémenter la fonction de tri du site Web.

Conclusion
Grâce à cet article, nous avons appris à utiliser PHP et CGI pour implémenter les fonctions de pagination et de tri du site Web, et avons joint les exemples de code correspondants. Ces fonctionnalités sont très utiles pour gérer la présentation et le traitement de grandes quantités de données, offrant ainsi une meilleure expérience utilisateur et de meilleurs résultats. J'espère que cet article pourra vous être utile !

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!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal