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

So implementieren Sie die Paging-Anzeige in PHP

PHPz
PHPzOriginal
2023-04-21 09:08:031152Durchsuche

Da der Inhalt der Website immer größer wird, wird es nach und nach notwendig, ihn in Seiten anzuzeigen. Bei der Entwicklung einer Website mit PHP ist die Implementierung der Paging-Anzeige zu einer Grundkompetenz geworden. In diesem Artikel wird erläutert, wie die Paging-Anzeige in PHP implementiert wird.

1. Das Konzept der Paging-Anzeige

Paging-Anzeige besteht darin, ein größeres Datenergebnis zur Anzeige in mehrere Seiten aufzuteilen. Zum Beispiel Suchergebnisanzeige, Produktanzeige usw. Die Paging-Anzeige wird im Allgemeinen in zwei Methoden unterteilt: Front-End-Paging und Back-End-Paging.

Front-End-Paging: Beim Front-End-Paging geht es darum, die gesamten Daten auf der Clientseite aufzuteilen und den Zweck des Daten-Paging durch JavaScript-Anzeigeeffektblöcke zu erreichen. Bei diesem Ansatz werden normalerweise alle Daten auf einmal extrahiert (im JSON- oder XML-Format zurückgegeben) und über JavaScript angezeigt.

Back-End-Paging: Back-End-Paging bezieht sich auf Paging-Daten auf der Serverseite und gibt nur die Daten der aktuellen Seite zurück, nicht alle Daten. Diese Methode ermittelt normalerweise die aktuelle Seitenzahl anhand der übergebenen Parameter und ruft dann mithilfe von SQL-Abfrageparametern nur die aktuell erforderlichen Daten zur Anzeige ab. Am häufigsten wird die in MySQL bereitgestellte Limit-Anweisung verwendet, mit der die Paging-Funktion problemlos implementiert werden kann, sodass wir problemlos Daten-Paging in PHP durchführen können.

2. Verwenden Sie PHP und MySQL, um Paging zu implementieren.

Lassen Sie uns im Detail vorstellen, wie Sie PHP und MySQL verwenden, um die Paging-Funktion zu implementieren.

  1. Mit der Datenbank verbinden

Bevor wir beginnen, müssen wir eine Verbindung mit der MySQL-Datenbank herstellen. Sie können PDO oder MySQL verwenden, um eine Verbindung zur Datenbank herzustellen.

//连接到MySQL数据库
$host = "localhost";
$user = "username";
$password = "password";
$database = "database";
$connect = mysqli_connect($host, $user, $password, $database);

?>

  1. Gesamtzahl der Datensätze abrufen

Um Paging zu implementieren, müssen wir zunächst die Gesamtzahl der Datensätze in den Abfrageergebnissen für das Paging abrufen. Die Gesamtzahl der Datensätze können wir über SQL-Anweisungen ermitteln.

// 获取记录总数
$sql = "SELECT COUNT(*) FROM table_name";
$result = mysqli_query($connect, $sql);
$row = mysqli_fetch_row($result);
$total = $row[0];

?>

  1. Legen Sie die Anzahl der auf jeder Seite angezeigten Datensätze fest.

Vor der Seitenanzeige müssen wir die Anzahl der auf jeder Seite angezeigten Datensätze angeben. Normalerweise werden 10 oder 20 Datensätze pro Seite angezeigt, wir können dies jedoch nach Bedarf anpassen.

//设定每页显示的记录数
$per_page = 10;

?>

  1. Berechnen Sie die Gesamtzahl der Seiten

Nachdem wir die Gesamtzahl der Datensätze und die Anzahl der auf jeder Seite angezeigten Datensätze ermittelt haben, können wir berechnen, wie viele Seiten es gibt gesamt.

// 计算总页数 
$total_pages = ceil($total / $per_page);

?>

  1. Geben Sie die aktuelle Seitenzahl ein

Benutzer können durch Eingabe der Seitenzahl zur gewünschten Seite navigieren. Daher müssen wir zuerst die aktuelle Seitenzahl abrufen (falls nicht angegeben, wird standardmäßig Seite 1 verwendet).

// 获取当前页码
if (isset($_GET['page'])) {
    $page = $_GET['page'];
} else {
    $page = 1;
}

?>

  1. Berechnen Sie die Position des Startdatensatzes

Bevor wir die Abfrage ausführen, müssen wir berechnen, von welchem ​​Datensatz aus die Seite beginnen soll. Für die erste Seite beginnen wir mit dem ersten Datensatz; für andere Seiten müssen wir die Startdatensatzposition der Seite anhand der aktuellen Seitenzahl berechnen.

// 计算起始记录位置
$start = ($page - 1) * $per_page;

?>

  1. Daten abfragen und anzeigen

Nachdem wir die Startdatensatzposition erhalten haben, können wir die Abfrage ausführen und die Ergebnisse in ein HTML-Dokument ausgeben. Hier wird die Limit-Anweisung in MySQL verwendet.

// 查询数据并显示
$sql = "SELECT * FROM table_name LIMIT $start, $per_page";
$result = mysqli_query($connect, $sql);
while ($row = mysqli_fetch_assoc($result)) {
    echo $row['column_name'];
}

?>

  1. Paginierte Navigation

Der letzte Schritt besteht darin, eine paginierte Navigation zu erstellen, damit Benutzer schnell zur gewünschten Seite springen können. Die übliche Paginierungsnavigation umfasst numerische Links sowie Links zur „vorherigen Seite“ und „nächste Seite“. Wir können die passende Seitennavigation entsprechend unseren Bedürfnissen auswählen.

// 分页链接
if ($total_pages > 1) {
    echo '';
}

?>

Das Obige ist eine gekürzte Version von Paging mit PHP und MySQL. 3. Mögliche Probleme beim Paging In manchen Fällen ist die COUNT-Anweisung möglicherweise nicht genau genug.

Der Abfrageprozess ist langsam: Wenn die Datenmenge sehr groß ist, kann die Paging-Abfrage dazu führen, dass der Abfrageprozess langsam ist. In diesem Fall können Methoden wie Caching oder Daten-Sharding verwendet werden, um die Abfrageeffizienz zu optimieren.

SQL-Injection-Sicherheitslücke: Wenn die Seitenzahl oder andere vom Benutzer eingegebene Parameter nicht gefiltert werden, kann dies zu einer SQL-Injection-Sicherheitslücke führen und eine Datenfilterung und -überprüfung sollte im Code durchgeführt werden.

  1. IV. Durch die obige Einführung können wir klar verstehen, wie Paging in PHP implementiert wird. Wir können auch erkennen, dass sich die Methode zur Paging-Implementierung je nach verwendeter Datenbank und tatsächlichem Szenario ändert Das Gleiche gilt für die Schüler:innen können selbst darüber nachdenken und verschiedene Methoden anwenden, um die Erfahrung und Effizienz unseres Paging-Betriebs zu verbessern und so eine bessere Benutzererfahrung zu erzielen.

Das obige ist der detaillierte Inhalt vonSo implementieren Sie die Paging-Anzeige 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