Heim  >  Artikel  >  Backend-Entwicklung  >  So implementieren Sie die Paging-Funktion in PHP

So implementieren Sie die Paging-Funktion in PHP

爱喝马黛茶的安东尼
爱喝马黛茶的安东尼Original
2019-09-29 14:37:553178Durchsuche

So implementieren Sie die Paging-Funktion in PHP

Paging-Effekt ist bei Webseiten üblich, aber wie können wir Paging erreichen? Heute haben wir zwei Methoden angewendet, um den Paging-Effekt zu erzielen.

Zuerst müssen wir eine Tabelle in der Datenbank vorbereiten und Daten einfügen. Dies sind alles notwendige Voraussetzungen, wie im Bild gezeigt (der Bibliotheksname ist jereh, der Tabellenname ist n_content):

Schrittanalyse:

Wenn wir Paging benötigen, müssen wir „select * from tableName limit num1,num2“ verwenden die Abfrage, gefolgt von Mit zwei Parametern ist num1 die Nummer, ab der mit der Suche begonnen werden soll, und num2 ist die Anzahl der zu durchsuchenden Informationen. Ich möchte beispielsweise nach drei Datenelementen suchen: 2, 3 und 4, als Wie in der Abbildung unten gezeigt:

Okay, beginnen wir mit den Schritten:

1. Erstellen Sie eine Funktion, um die Funktion zur Einschränkung der Abfrage zu implementieren

Lassen Sie uns zunächst darüber nachdenken. Um diese Funktion zu implementieren, müssen wir zunächst die aktuelle Anzahl der Seiten und die Anzahl der auf einer Seite anzuzeigenden Informationen kennen. Dann

legen wir pageNum auf die Anzahl der Seiten und pageSize fest, um mehrere Daten auf einer Seite anzuzeigen. In der Abfrageanweisung „select * from tableName limit num1,num2“,

num1 ist (pageNum -1) *pageSize, num2 ist pageSize. Nachdem Sie diese Beziehung verstanden haben, ist der Code wie folgt:

//分页的函数
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;
}

Im obigen Code ist es erwähnenswert Nach limit muss ein Leerzeichen eingefügt werden, andernfalls tritt ein Fehler auf.

Verwandte Empfehlungen: „php-Einführungs-Tutorial

2. Erstellen Sie eine zweite Funktion, um die Gesamtzahl der Seiten anzuzeigen

Dabei gibt es keine neuen Wissenspunkte. Es sind alles Wissenspunkte, die bereits geschrieben wurden.

//显示总页数的函数
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;
}

3. Rufen Sie diese beiden Funktionen zur Vorverarbeitung auf

Wir möchten die Ergebnisse der nächsten Seite und der nächsten Seite erhalten, also müssen wir get verwenden Diese Seite überträgt Daten. Wenn wir die Seite aktualisieren, ruft get definitiv keine Daten ab, sodass wir trinokulare Arithmetik verwenden müssen.

<?php
   @$allNum = allNews();
   @$pageSize = 3; //约定每页显示的信息条数
   @$pageNum = empty($_GET["pageNum"])?1:$_GET["pageNum"];
   @$endPage = ceil($allNum/$pageSize); //总页数
   @$array = news($pageNum,$pageSize);
?>

4. Anzeige auf der Seite

Wenn Sie es auf der Seite anzeigen möchten, müssen Sie eine foreach-Schleife verwenden. Der Code ist einfach, siehe unten :

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

5. Um den Effekt der vorherigen Seite und der nächsten Seite zu erzielen

Um den Effekt des Seitensprungs zu erzielen, müssen wir das href-Attribut von a verwenden Tag und schreiben Sie die Adresse „?pageNum = ..“. Da sie von get übergeben wird, haben wir im vorherigen Schritt bereits $_GET verwendet, um die Parameter zu übernehmen Parameter von get;

Startseite: "pageNum=1";

Vorherige Seite: "pageNum=

Nächste Seite:"pageNum="

Letzte Seite: "pageNum=< ;?php echo $pageNum =$endPage? >“;

Besonderes Augenmerk sollte auf Folgendes gelegt werden: Auf „pageNum=" darf kein Leerzeichen folgen. Der Code lautet wie folgt:

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

Der Code lautet wie folgt:




    
    分页
   


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

 

Effekt wie folgt:

So implementieren Sie die Paging-Funktion in PHP

Das obige ist der detaillierte Inhalt vonSo implementieren Sie die Paging-Funktion in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn