


Bagaimana untuk Melaksanakan Penomboran Pangkalan Data Mudah dalam PHP?
Jan 21, 2025 pm 07:07 PM<?php // Database connection (replace with your credentials) $host = 'localhost'; $dbname = 'your_database'; $user = 'your_user'; $password = 'your_password'; try { $dbh = new PDO("mysql:host=$host;dbname=$dbname", $user, $password); $dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); } catch (PDOException $e) { die("Database connection failed: " . $e->getMessage()); } // Get total number of records $stmt = $dbh->query('SELECT COUNT(*) FROM your_table'); $totalRecords = $stmt->fetchColumn(); // Pagination settings $recordsPerPage = 20; $totalPages = ceil($totalRecords / $recordsPerPage); $currentPage = isset($_GET['page']) ? (int)$_GET['page'] : 1; $currentPage = max(1, min($currentPage, $totalPages)); // Ensure page number is within valid range $offset = ($currentPage - 1) * $recordsPerPage; // Fetch data for current page $stmt = $dbh->prepare("SELECT * FROM your_table LIMIT :limit OFFSET :offset"); $stmt->bindParam(':limit', $recordsPerPage, PDO::PARAM_INT); $stmt->bindParam(':offset', $offset, PDO::PARAM_INT); $stmt->execute(); $data = $stmt->fetchAll(PDO::FETCH_ASSOC); // Display data echo "<h2>Data (Page " . $currentPage . " of " . $totalPages . ")</h2>"; if ($data) { echo "<ul>"; foreach ($data as $row) { echo "<li>" . implode(", ", $row) . "</li>"; // Adjust as needed for your table structure } echo "</ul>"; } else { echo "<p>No data found for this page.</p>"; } // Display pagination links echo "<div class='pagination'>"; for ($i = 1; $i <= $totalPages; $i++) { $activeClass = ($i == $currentPage) ? 'active' : ''; echo "<a href='?page=" . $i . "' class='" . $activeClass . "'>" . $i . "</a>"; } echo "</div>"; ?> <!DOCTYPE html> <html> <head> <title>Simple Pagination</title> <style> .pagination a { display: inline-block; padding: 8px 12px; margin: 0 4px; text-decoration: none; border: 1px solid #ccc; } .pagination a.active { background-color: #4CAF50; color: white; } </style> </head> <body> </body> </html>
Contoh yang dipertingkat ini termasuk:
-
Pengendalian Ralat: Blok
try-catch
mengendalikan kemungkinan ralat sambungan pangkalan data. - Penyata Disediakan: Menggunakan pernyataan yang disediakan untuk mengelakkan kelemahan suntikan SQL. Ini penting untuk keselamatan.
-
Pengesahan Input: Walaupun contoh asal menggunakan
filter_input
, ia tidak mempunyai pengesahan yang menyeluruh. Versi ini memastikan nombor halaman ialah integer positif dan dalam julat yang sah. -
Paparan Data yang Lebih Jelas: Data dipaparkan dalam format yang lebih mesra pengguna (senarai tidak tersusun). Anda perlu menyesuaikan bahagian
implode
agar sepadan dengan nama lajur jadual pangkalan data anda. - HTML Lengkap: Menyediakan struktur HTML lengkap untuk pemaparan yang lebih baik.
- Penggayaan CSS: CSS asas disertakan untuk menggayakan pautan penomboran.
-
Nilai Pemegang Tempat: Ingat untuk menggantikan
"your_database"
,"your_user"
,"your_password"
dan"your_table"
dengan bukti kelayakan pangkalan data dan nama jadual sebenar anda.
Ingat untuk mencipta pangkalan data dan jadual yang diperlukan sebelum menjalankan kod ini. Contoh yang dipertingkatkan ini menyediakan penyelesaian yang lebih mantap dan selamat untuk penomboran dalam PHP.
Atas ialah kandungan terperinci Bagaimana untuk Melaksanakan Penomboran Pangkalan Data Mudah dalam PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Artikel Panas

Alat panas Tag

Artikel Panas

Tag artikel panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Kurangkan penggunaan memori MySQL di Docker

Bagaimana anda mengubah jadual di MySQL menggunakan pernyataan Alter Table?

Cara menyelesaikan masalah MySQL tidak dapat membuka perpustakaan bersama

Apa itu SQLite? Gambaran Keseluruhan Komprehensif

Jalankan MySQL di Linux (dengan/tanpa bekas podman dengan phpmyadmin)

Menjalankan Pelbagai Versi MySQL di MacOS: Panduan Langkah demi Langkah

Bagaimanakah saya menjamin MySQL terhadap kelemahan biasa (suntikan SQL, serangan kekerasan)?

Bagaimana saya mengkonfigurasi penyulitan SSL/TLS untuk sambungan MySQL?
