Maison > développement back-end > tutoriel php > Implémentez rapidement la fonction de pagination PHP en deux étapes, pratique et pratique

Implémentez rapidement la fonction de pagination PHP en deux étapes, pratique et pratique

王林
Libérer: 2023-04-07 07:52:02
avant
2086 Les gens l'ont consulté

Dans des circonstances normales, je créerai une classe spéciale pour la lecture de la base de données, qui comprend des opérations sur la base de données, y compris la pagination, etc., afin qu'elle soit pratique à utiliser. Il y a deux sections principales de code :

1. Lire la base de données et la convertir en un tableau de pagination  :

Le code est le suivant :

<?php    
    private function rs2array($sql=&#39;&#39;,$filename=&#39;&#39;,$pagesize=0){//生成二维数组    
            $autopage=false;    
            if (!isset($sql))die("未设置语句!");    
            $str=array();    
            $result = $this->Open_Db($sql);    
            $this->recordcount=$result->recordcount;    
            if ((isset($filename)) && ($pagesize!=0)){//分页开始    
                $autopage=true;    
                $FilesName = $filename;    
                $result->pagesize=$pagesize;    
                $page=$_GET[&#39;page&#39;];    
                if (($page!=&#39;&#39;) && (is_numeric($page))){    
                    $epage = $page;    
                    if ($epage<1)$epage=1;    
                    if ($epage>$result->pagecount)$epage = $result->pagecount;    
                }else{    
                    $epage=1;    
                }    
                if(!$result->eof)$result->Absolutepage=$epage;    
                $whileNum=$result->pagesize;    
            }    
            if(!isset($whileNum))$whileNum=$result->recordcount;    
            for($i=1;$i<=$whileNum;$i++){    
                if($result->eof)break;    
                for($n=0;$n<=($result->fields->count-1);$n++){    
                    $str[$i-1][$result[$n]->name] = $result[$n]->value;    
                }    
                $result->movenext();    
            }    
            if($autopage==true)$this->page = $this->Paging($filename,$result->pagecount,$epage);    
            $result->close();    
            return $str;    
        }    
?>
Copier après la connexion

2. Le code de radiomessagerie pour appeler :

<?php    
    static private function Paging($FilesName,$PageCount,$page){    
    $PageStr="";    
    $topname=&#39;第一页&#39;;    
    $bottomname=&#39;最末页&#39;;    
    $overname=&#39;上一页&#39;;    
    $upname=&#39;下一页&#39;;    
    $p=$FilesName.&#39;page=&#39;;    
            if ($PageCount>1){    
                if ($page<=1){    
                    $page=1;    
                    $PageStr=&#39;当前第 &#39;.$page.&#39; / &#39;.$PageCount.&#39; 页 [&#39;.$topname.&#39;] [&#39;.$overname.&#39;] <a href="&#39;.$p.($page+1).&#39;">[&#39;.$upname.&#39;]</a> <a href="&#39;.$p.($PageCount).&#39;">[&#39;.$bottomname.&#39;]</a>&#39;;    
                }else if($page>=$PageCount){    
                    $page=$PageCount;    
                    $PageStr=&#39;当前第 &#39;.$page.&#39; / &#39;. $PageCount . &#39; 页 <a href="&#39;.$p.(1).&#39;">[&#39;.$topname.&#39;]</a> <a href="&#39;.$p.($page-1).&#39;">[&#39;.$overname.&#39;]</a> [&#39;.$upname.&#39;] [&#39;.$bottomname.&#39;]&#39;;    
                }else{    
                    $PageStr=&#39;当前第 &#39; . $page . &#39; / &#39;. $PageCount . &#39; 页 <a href="&#39;.$p.(1).&#39;">[&#39;.$topname.&#39;]</a> <a href="&#39;.$p.($page-1).&#39;">[&#39;.$overname.&#39;]</a> <a href="&#39;.$p.($page+1).&#39;">[&#39;.$upname.&#39;]</a> <a href="&#39;.$p.($PageCount).&#39;">[&#39;.$bottomname.&#39;]</a>&#39;;    
                }    
            }else{    
                $PageCount=1;    
                $page=1;    
                $PageStr=(&#39;当前第 &#39; . $page) . &#39; / &#39;. $PageCount . &#39; 页 [&#39;.$topname.&#39;] [&#39;.$overname.&#39;] [&#39;.$upname.&#39;] [&#39;.$bottomname.&#39;]&#39;;    
            }    
            return $PageStr;    
        }    
?>
Copier après la connexion

Je pense que de cette façon, vous n'avez fondamentalement pas à vous soucier des problèmes de radiomessagerie lors de la lecture de la base de données, et si vous en avez plusieurs colonnes de site Web, il peut être appelé pour la pagination, ce qui est très pratique.

Veuillez signaler toute lacune dans le code ci-dessus, merci !

Pour plus de problèmes liés à PHP, veuillez visiter le site Web PHP chinois : https://www.php.cn/

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:codefans.net
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