Die Paging-Anzeige ist eine sehr verbreitete Methode zum Durchsuchen und Anzeigen großer Datenmengen und eines der am häufigsten verarbeiteten Ereignisse in der Webprogrammierung. Für Veteranen der Webprogrammierung ist das Schreiben dieser Art von Code so selbstverständlich wie Atmen, aber für Anfänger sind sie oft verwirrt über dieses Problem, deshalb habe ich diesen Artikel geschrieben, um dieses Problem im Detail zu erläutern.
1. Paging-Prinzip: Bei der sogenannten Paging-Darstellung wird die Ergebnismenge in der Datenbank künstlich in Abschnitte unterteilt. Zur Anzeige sind zwei Anfangsparameter erforderlich:
Wie viele Datensätze pro Seite ($PageSize)? Welche Seite ist die aktuelle Seite ($CurrentPageID)?
Geben Sie mir jetzt einfach einen weiteren Ergebnissatz und ich kann ein bestimmtes Ergebnis anzeigen.
Andere Parameter wie vorherige Seite ($PReviousPageID), nächste Seite ($NextPageID), Gesamtzahl der Seiten ($numPages) usw. können basierend auf den vorherigen Angaben ermittelt werden.
Wenn Sie am Beispiel der MySQL-Datenbank einen bestimmten Inhalt aus der Tabelle abfangen möchten, können Sie die SQL-Anweisung verwenden: select * from table limit offset, rows. Schauen Sie sich den folgenden Satz von SQL-Anweisungen an und versuchen Sie, die Regeln zu finden.
Die ersten 10 Datensätze: Wählen Sie * aus dem Tabellenlimit 0,10 aus. Der 11. bis 20. Datensatz: Wählen Sie * aus dem Tabellenlimit 10,10. Der 21. bis 30. Datensatz: Wählen Sie * aus dem Tabellenlimit 20,10 ...... Dieser Satz von SQL-Anweisungen ist eigentlich die SQL-Anweisung zum Abrufen von Daten von jeder Seite der Tabelle, wenn $PageSize=10. Wir können eine solche Vorlage zusammenfassen: select * from table limit ($CurrentPageID - 1) * $PageSize, $PageSize Verwenden Sie diese Vorlage, um den entsprechenden Wert einzufügen und ihn mit dem obigen Satz von SQL-Anweisungen zu vergleichen, um zu sehen, ob dies der Fall ist. Nach der Lösung des wichtigsten Problems, wie man die Daten erhält, müssen nur noch die Parameter übergeben, die entsprechende SQL-Anweisung erstellt und dann mit PHP die Daten aus der Datenbank abgerufen und angezeigt werden.
2. Paginierungscodebeschreibung: fünf Schritte
Der Code ist vollständig erklärt und kann kopiert werden Verwenden Sie es direkt in Ihrem Notizblock
Liste der Mitarbeiterinformationen
//Informationen aller Emp-Tabellen anzeigen
//1. Stellen Sie eine Verbindung zur Datenbank her
$conn=mysql_connect('localhost','root','1234abcd') or die('Connection Database Error'.mysql_error());
//2. Datenbank auswählen
mysql_select_db('empManage');
//3. Zeichensatz auswählen
mysql_query('Namen utf8 festlegen');
//4. SQL-Anweisung senden und das Ergebnis zur Verarbeitung erhalten
//4.1 Pagling [Pagling zum Senden von zwei SQL-Anweisungen, eine zum Abrufen von $ Rowcount und die andere zum Abrufen des Paging-Ergebnisses durch das SQL-Limit. Wir erhalten also zwei Ergebnismengen. Denken Sie daran, sie bei der Benennung zu unterscheiden.
Paging (vier Werte und zwei SQL-Anweisungen). ]
$pageSize=3;//Wie viele Datensätze werden auf jeder Seite angezeigt
$rowCount=0;//Wie viele Datensätze gibt es insgesamt
$pageNow=1;//Welche Seite möchten Sie anzeigen
$pageCount=0;//Wie viele Seiten gibt es insgesamt? [Es gibt vier Indikatoren für Paging, die alle unverzichtbar sind. Da $rowCount vom Server bezogen werden kann, kann der Anfangswert als
angegeben werden
Welche Seite möchte $pageNow anzeigen? Es ist am besten, den Wert auf 0 zu setzen. $pageSize gibt an, wie viele Datensätze auf jeder Seite angezeigt werden sollen.
$pageCount=ceil($rowCount/$pageSize), da $rowCount einen Anfangswert von 0 haben kann, kann $pageCount natürlich auf 0 gesetzt werden. Vier Indikatoren, zwei 0, einer 1 und der andere ist die Website braucht. ]
//4.15 Ändern Sie den Wert von $ PAGENOW entsprechend dem Paging-Link
if(!empty($_GET['pageNow'])){
$pageNow=$_GET['pageNow'];
}[Ändern Sie den Wert von $pageNow basierend auf dem Paging-Link. ]
$sql='select count(id) from emp';
$res1=mysql_query($sql);
//4.11 Ermitteln Sie die Anzahl der Zeilen
if($row=mysql_fetch_row($res1)){
$rowCount=$row[0];
}//[Holen Sie sich $rowCount, und wir kennen die beiden Indikatoren $pageCount. ]
//4.12 Berechnen Sie, wie viele Seiten es gibt
$pageCount=ceil($rowCount/$pageSize);
$pageStart=($pageNow-1)*$pageSize;
//4.13 SQL-Ergebnisse mit Paging senden
$sql="select * from emp limit $pageStart,$pageSize";//[Paging wird basierend auf den beiden Werten (Startwert, Anzahl der Elemente pro Seite) nach dem Limit der $sql-Anweisung implementiert . und finden Sie diese beiden Werte.]
$res2=mysql_query($sql,$conn) or die('无法获取结果集'.mysql_error());
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