Maison  >  Article  >  développement back-end  >  Comment utiliser PHP et CGI pour implémenter des fonctions de pagination et de tri de sites Web

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

PHPz
PHPzoriginal
2023-07-21 13:39:161610parcourir

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'];
  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); // 总页数
  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; // 当前页码,默认为第一页
  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; // 偏移量
  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)) {
      // 处理数据
    }
  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> ";
    }

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'; // 排序方式,默认为升序
  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";
  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)) {
      // 处理数据
    }
  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> ";

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!

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