Heim > Artikel > Backend-Entwicklung > PHP implementiert die Daten-Paging-Funktion
PHP ist eine serverseitige Skriptsprache, die in der Webentwicklung weit verbreitet ist. Wenn wir eine große Datenmenge in einer Datenbank verarbeiten, müssen wir normalerweise die Daten-Paging-Technologie verwenden, um die Daten in Seiten aufzuteilen, die angezeigt werden können, um Serverressourcen zu sparen und die Effizienz des Benutzerzugriffs zu verbessern. In diesem Artikel wird erläutert, wie Sie mit PHP die Daten-Paging-Funktion implementieren.
Zuerst müssen wir eine Verbindung zur Datenbank herstellen, was durch den folgenden Code erreicht wird:
$servername = "localhost"; //数据库主机名 $username = "root"; //数据库用户名 $password = ""; //数据库密码 $dbname = "myDB"; //数据库名称 // 创建连接 $conn = mysqli_connect($servername, $username, $password, $dbname); // 检测连接是否成功 if (!$conn) { die("Connection failed: " . mysqli_connect_error()); }
Als nächstes müssen wir die Gesamtzahl der Datensätze ermitteln in der Datenbank für Paging. Dies kann durch den folgenden Code erreicht werden:
$sql = "SELECT COUNT(*) FROM myTable"; //myTable为数据表名 $result = mysqli_query($conn, $sql); $row = mysqli_fetch_array($result); $total_records = $row[0]; //获取总记录数
Nachdem wir die Gesamtzahl der Datensätze haben, können wir die Anzahl der Seiten berechnen, die geteilt werden müssen, und die Anzahl der auf jeder Seite angezeigten Datensätze. Wenn beispielsweise jede Seite 10 Datenelemente anzeigt und es insgesamt 100 Datenelemente gibt, müssen wir sie in 10 Seiten aufteilen. Dies kann durch den folgenden Code erreicht werden:
$records_per_page = 10; //每页记录数 $total_pages = ceil($total_records / $records_per_page); //总页数
Beim Blättern müssen Sie die aktuelle Seitenzahl abrufen, um den Datenbereich zu bestimmen, der angezeigt werden muss. Die aktuelle Seitenzahl kann über den folgenden Code abgerufen werden:
if (isset($_GET['page'])) { $current_page = $_GET['page']; } else { $current_page = 1; //默认为第一页 }
Mit der aktuellen Seitenzahl und der Anzahl der Datensätze pro Seite können wir die Datensatzposition der Startabfrage berechnen. Wenn Sie beispielsweise die Daten auf Seite 3 abfragen und 10 Daten auf jeder Seite anzeigen möchten, lautet die Startdatensatzposition:
$starting_position = ($current_page - 1) * $records_per_page;
Nach der Berechnung der Startdatensatzposition müssen wir eine Abfrage durchführen die Datenbank und erhalten die anzuzeigenden Daten. Dies kann durch den folgenden Code erreicht werden:
$sql = "SELECT * FROM myTable LIMIT $starting_position, $records_per_page"; $result = mysqli_query($conn, $sql);
Zeigen Sie abschließend die Paging-Navigationsleiste unten auf der Seite an. Dies kann durch den folgenden Code erreicht werden:
echo "<ul class='pagination'>"; if ($current_page > 1) { $prev_page = $current_page - 1; echo "<li><a href='{$_SERVER['PHP_SELF']}?page=$prev_page'>«</a></li>"; } for ($i = 1; $i <= $total_pages; $i++) { if ($i == $current_page) { echo "<li class='active'><a href='#'>$i</a></li>"; } else { echo "<li><a href='{$_SERVER['PHP_SELF']}?page=$i'>$i</a></li>"; } } if ($current_page < $total_pages) { $next_page = $current_page + 1; echo "<li><a href='{$_SERVER['PHP_SELF']}?page=$next_page'>»</a></li>"; } echo "</ul>";
Der obige Code verwendet den Stil des Bootstrap-Frameworks und kann den Stil und das Layout selbst anpassen.
Der vollständige Code lautet wie folgt:
PHP数据分页
"; echo " 姓名 年龄 性别 " . $row['name'] . " "; echo "" . $row['age'] . " "; echo "" . $row['gender'] . " "; echo ""; } ?>
Es ist zu beachten, dass wir in der tatsächlichen Anwendung für jeden Schritt des Codes eine Sicherheitsüberprüfung durchführen müssen, um böswillige Angriffe wie SQL-Injection zu verhindern.
Das obige ist der detaillierte Inhalt vonPHP implementiert die Daten-Paging-Funktion. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!