Heim  >  Artikel  >  Backend-Entwicklung  >  Ein Beispiel erklärt, wie man eine Paging- und Abfragefunktion in PHP implementiert

Ein Beispiel erklärt, wie man eine Paging- und Abfragefunktion in PHP implementiert

PHPz
PHPzOriginal
2023-04-06 09:15:26868Durchsuche

Wenn wir auf einer Webseite mehr Daten wie Artikellisten, Produktlisten usw. anzeigen müssen, müssen wir die Daten häufig paginieren, damit Benutzer bequemer durchsuchen und anzeigen können. Bei Webseiten, die die Paging-Funktion implementiert haben, ist es manchmal erforderlich, einige Abfragebedingungen hinzuzufügen, damit Benutzer die erforderlichen Daten genauer filtern können. Wie implementiert man also eine Paging- und Abfragefunktion in PHP? Im Folgenden stellen wir die spezifische Implementierungsmethode vor.

Lassen Sie uns zunächst die Implementierung von Paging überprüfen.

Wenn wir eine Paging-Funktion implementieren möchten, müssen wir normalerweise zwei Schlüsselwörter in der Datenbank verwenden: LIMIT und OFFSET. Dabei gibt LIMIT die maximale Anzahl von Datensätzen an, die ab einer bestimmten Position abgerufen werden sollen, und OFFSET gibt die Position an, ab der mit dem Abruf begonnen werden soll. Normalerweise können wir die Werte dieser beiden Schlüsselwörter berechnen. Die Formel lautet: LIMIT ($page - 1) * $pagesize, $pagesize.

Bei praktischen Anwendungen müssen Sie außerdem auf die folgenden Punkte achten:

  1. Sie müssen die Gesamtzahl der Daten ermitteln, um die Gesamtzahl der Seiten und die Seitenzahlen vor und nach der aktuellen Seite zu berechnen
  2. Wie viele Daten auf jeder Seite angezeigt werden, muss im Code festgelegt werden: 10, 20, 30 usw.
  3. Benutzern das Durchführen von Seitensprungvorgängen ermöglichen, d Seitenzahl.
Bei den oben genannten Inhalten handelt es sich um Grundkenntnisse zum Paging. Wenn Leser mit der Implementierung von Paging nicht vertraut sind, können sie zunächst einige relevante Informationen lesen.

Schauen wir uns nun an, wie die Paging- und Abfragefunktion implementiert wird.

Für die Funktion des Paging mit Abfrage müssen bei der Implementierung zwei Teile getrennt betrachtet werden: Paging und Abfrage. Im Folgenden stellen wir diese beiden Teile vor.

1. Paging

Die Methode zur Implementierung von Paging ähnelt der oben vorgestellten, jedoch mit einigen Feinabstimmungen. Die spezifische Implementierungsmethode lautet wie folgt:

    Erhalten Sie die Gesamtzahl der Abfrageergebnisse.
Die Gesamtzahl der Abfrageergebnisse sind die Grunddaten, die für die anschließende Berechnung der Gesamtzahl der Seiten und der Seitenzahlen davor und danach erforderlich sind. Wir können sie über die SELECT count(*)-Anweisung in SQL erhalten. Ein Beispiel lautet wie folgt:

SELECT count(*) as total FROM table WHERE condition;
wobei „total“ die Gesamtzahl der Abfrageergebnisse ist.

    Filter und Paging basierend auf den vom Benutzer ausgewählten Abfragebedingungen.
Dieser Teil ist komplexer und muss auf der Grundlage spezifischer Geschäftsszenarien berücksichtigt werden. Am Beispiel des Online-Einkaufszentrums: Wenn wir Produkttypen filtern möchten, müssen wir der Front-End-Seite ein Dropdown-Menü hinzufügen, aus dem Benutzer den gewünschten Typ auswählen können. Anschließend werden die von der Front-End-Seite gesendeten Abfragebedingungen in SQL-Anweisungen zusammengestellt, anschließend wird das Paging über den Paging-Algorithmus durchgeführt und schließlich werden die Paging-Ergebnisse angezeigt.

Werfen wir nun einen Blick auf die spezifische Code-Implementierung. 🔜 auf jeder Seite und $offset stellt die Position dar, ab der mit dem Datenabruf begonnen wird. Gemäß den vom Frontend gesendeten Abfragebedingungen stellen wir die SQL-Anweisung zusammen, fügen die Schlüsselwörter LIMIT und OFFSET für das Paging hinzu und rufen schließlich die Abfragemethode über das $db-Objekt auf, um die SQL-Anweisung auszuführen.

2. Abfrage

Bei der Implementierung der Abfragefunktion müssen wir normalerweise die Abfragebedingungen als Parameter übergeben und basierend auf den Abfragebedingungen filtern. Wenn wir beispielsweise nach Produktnamen suchen möchten, müssen wir der Front-End-Seite ein Abfragefeld hinzufügen, damit Benutzer den Produktnamen eingeben können, den sie abfragen möchten. Anschließend werden die von der Front-End-Seite gesendeten Abfragebedingungen in SQL-Anweisungen zusammengestellt und schließlich werden die Abfrageergebnisse auf Seiten angezeigt.

Werfen wir nun einen Blick auf die spezifische Code-Implementierung.

Zuerst ist der Code zum Abfragen:

$sql = "SELECT count(*) as total FROM table WHERE condition";
$result = $db->query($sql);
$row = $result->fetch_assoc();
$total = $row['total'];
Dann ist der Code zum Zusammenstellen von SQL-Anweisungen und Paging:

$page = $_GET['page'] ? $_GET['page'] : 1;
$pagesize = 10;

$offset = ($page - 1) * $pagesize;

$sql = "SELECT * FROM table WHERE condition";

if (isset($_GET['type']) && !empty($_GET['type'])) {
    $type = $_GET['type'];
    $sql .= " AND type = '$type'";
}

$sql .= " ORDER BY id DESC LIMIT $offset, $pagesize";

$result = $db->query($sql);
Unter diesen stellt $name das Abfrageschlüsselwort dar, und Fuzzy-Matching wird über das Schlüsselwort LIKE durchgeführt. Gemäß den vom Front-End gesendeten Abfragebedingungen stellen wir die SQL-Anweisung zusammen, fügen die Schlüsselwörter LIMIT und OFFSET für das Paging hinzu und rufen schließlich die Abfragemethode über das $db-Objekt auf, um die SQL-Anweisung auszuführen.

Zusammenfassung

Das Obige ist die spezifische Methode zum Implementieren von Paging mit Abfrage in PHP. In praktischen Anwendungen müssen wir basierend auf bestimmten Geschäftsszenarien optimieren und verbessern, um eine bessere Benutzererfahrung und Leistung zu erzielen. Ich hoffe, dass der obige Inhalt für alle Entwickler hilfreich ist.

Das obige ist der detaillierte Inhalt vonEin Beispiel erklärt, wie man eine Paging- und Abfragefunktion in PHP implementiert. 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