1. Problem Bei großen Datenmengen in der Datenbank sollte man jeweils nur einen Teil davon abfragen, um den Server und die Seite zu entlasten. Hier verwenden wir die Paginierungskomponente von Die folgende Abbildung stellt den grundlegendsten Paging-Stil dar: Natürlich müssen entsprechende Events eingeführt werden, um bei Seitenwechseln die Datenbank abzufragen. 2. Lösung2.1 Paging-Komponente<el-pagination Hintergrund Layout = "Zurück, Pager, Weiter" :Seitengröße="8" :gesamt="gesamt" :current-page="Seitennummer" @current-change="handleCurrentChange"> </el-pagination>
2.2 Funktion zum Abrufen von Datenbankdaten: getData(): Die Parameter sind getData(Offset,Grenzwert){ dies.axios.post('/php/select.php', qs.stringify({ Versatz: Versatz, Grenze: Grenze, Typ: „Fundbüro“ }), { Header: { 'Inhaltstyp': 'Anwendung/x-www-form-urlencoded' } }).then((res) => { wenn(res.data === 0){ dies.gesamt = 0; diese.liste = []; zurückkehren; } dies.total = res.data.total diese.Liste = res.data.data dies.laden = falsch }).catch((err) => { dies.$message.error(err) }) } 2.3 Die Seite wird geladen und die Daten der ersten Seite müssen angefordert werdenerstellt () { dies.getData(0,8); }, Der Seitenwechsel löst die Funktion Rufen Sie getData auf, um Daten auf verschiedenen Seiten abzufragen: handleCurrentChange(Wert){ this.list = [] // Daten der vorherigen Seite löschen this.getData((val-1)*8,8); } Unten sind die Backend-Daten: Jetzt gibt es 10 Datensätze in der Datentabelle: Die vom Frontend Datei auswählen.php: <?php $servername = "lokaler Host"; $username = "Benutzername"; $password = "Passwort"; $dbname = "Datenbankname"; // Verbindung erstellen $conn = new mysqli($servername, $username, $password, $dbname); // Verbindung prüfen wenn ($conn->connect_error) { die("Verbindung fehlgeschlagen: " . $conn->connect_error); } $typ = $_POST['Typ']; //Start- und Endnummer der Front-End-Parameter abrufen wenn ( !isset( $_POST['offset'] ) ) { Echo 0; Ausfahrt(); }; $offset = (int)$_POST['Offset']; wenn ( !isset( $_POST['limit'] ) ) { Echo 0; Ausfahrt(); }; $limit = (int)$_POST['limit']; //Paginierungsabfragedatenbank $sql = "SELECT * FROM posts where type='$type' order by id desc LIMIT $limit OFFSET $offset"; $Ergebnis = $conn->query($sql); $sqlGetCount = "SELECT COUNT(*) cnt FROM posts where type='$type'"; : $rescnt = $conn->query($sqlGetCount); $rescnt = $rescnt->fetch_assoc(); $arr = Array(); wenn ($Ergebnis->Anz.Zeilen > 0) { während ( $row = $result->fetch_assoc() ) { array_push( $arr, $row ); } //echo json_encode( $arr, JSON_UNESCAPED_UNICODE ); echo json_encode(array_merge(array('Daten'=>$arr),array('total'=>(int)$rescnt['cnt']))); } anders { Echo 0; } mysqli_close( $conn ); ?> Hier wird SQL-Anweisung: "SELECT * FROM Beiträge, bei denen Typ='$type' ist, sortiert nach ID desc LIMIT $limit OFFSET $offset" 3. Analyse Dabei bedeutet Beispiel: $limit = 8, $offest = 0: bedeutet, dass die ersten 8 Daten in der Datenbank abgefragt werden, beginnend bei 0 (ohne 0, der MySQL-Index beginnt bei 0), und dass 8 Daten abgefragt werden, also 1 bis 8 Daten. Zu diesem Zeitpunkt ist der Parameter Gleichzeitig gibt select.php die Gesamtzahl der Dateneinträge zurück: SELECT COUNT(*) cnt FROM Beiträge, wobei Typ='$Typ' Nachdem die Front-End-Seite den 4. Ergebnisse Hinweis: Ihr Dies ist das Ende dieses Artikels über die Implementierung von Paging-Abfragen in Vue+ElementUI – MySQL-Daten. Weitere relevante Inhalte zur Implementierung von Paging-Abfragen in Vue+ElementUI finden Sie in den vorherigen Artikeln von 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, dass jeder 123WORDPRESS.COM in Zukunft unterstützen wird! Das könnte Sie auch interessieren:
|
<<: Spezifische Verwendung von MySQL-Fensterfunktionen
Inhaltsverzeichnis Vorwort 1. Anspruch und Wirkun...
Dieser Abschnitt beginnt mit den Details der Text...
Ergebnisse erzielen Implementierungscode html <...
In Projekten wird häufig das zweispaltige Layout ...
SVG wurde in den letzten Jahren aufgrund seiner v...
Die wichtigsten Protokolle im MySQL-Protokollsyst...
Inhaltsverzeichnis Vorwort Lua-Skript nignx.conf-...
Vorne geschrieben Eine Datenbank ist im Wesentlic...
Bei der Designarbeit höre ich oft, dass an der Übe...
Vorwort Ich habe gerade einen neuen VPS gekauft. ...
Dieser Artikel beschreibt, wie man Redis- und php...
Discuz! Forum verfügt über zahlreiche Konfiguratio...
Laden Sie zuerst JDK herunter. Hier verwenden wir...
Das Core Asset Management Project erfordert, dass...
Als ich den Aufsatz zum ersten Mal verwendete, füh...