Bagaimana untuk Melaksanakan Penomboran dengan PHP dan MySQL untuk Set Data Besar?

DDD
Lepaskan: 2024-11-03 23:58:30
asal
597 orang telah melayarinya

How to Implement Pagination with PHP and MySQL for Large Datasets?

Penomboran dengan PHP dan MySQL

Menomborkan set data yang besar ialah tugas biasa apabila mereka bentuk aplikasi web responsif. Artikel ini akan menunjukkan kaedah untuk melaksanakan penomboran dengan PHP dan MySQL, membolehkan anda memaparkan bilangan hasil yang terhad setiap halaman.

Secara khusus, kami menyasarkan untuk menomborkan hasil pertanyaan MySQL hipotetikal yang mendapatkan semula rekod daripada jadual yang dipanggil 'ubah hala' berdasarkan 'id_pengguna' melalui sesi PHP.

Pelaksanaan Kod

Untuk melaksanakan penomboran, kami boleh memanfaatkan skrip PHP berikut:

<code class="php"><?php

// MySQL connection code (not shown for brevity)

// Set pagination parameters
$perPage = 10;
$page = (isset($_GET['page'])) ? (int)$_GET['page'] : 1;
$startAt = $perPage * ($page - 1);

// Get total number of records
$query = "SELECT COUNT(*) as total FROM redirect WHERE user_id = '".$_SESSION['user_id']."'";
$r = mysql_fetch_assoc(mysql_query($query));

// Calculate total pages
$totalPages = ceil($r['total'] / $perPage);

// Generate pagination links
$links = "";
for ($i = 1; $i <= $totalPages; $i++) {
  $links .= ($i != $page )
            ? "<a href='index.php?page=$i'>Page $i</a> "
            : "$page ";
}


// Execute paginated query
$query = "SELECT * FROM 'redirect' WHERE 'user_id'= \''.$_SESSION['user_id'].' \' ORDER BY 'timestamp' LIMIT $startAt, $perPage";
$r = mysql_query($query);

// Display results and pagination links
// ...

echo $links; // display pagination links
?></code>
Salin selepas log masuk

Penjelasan

  • $perPage mentakrifkan bilangan rekod untuk dipaparkan setiap halaman.
  • $page mewakili halaman semasa yang dipaparkan.
  • $startAt mengira indeks permulaan rekod untuk halaman semasa.
  • Pertanyaan COUNT(*) mengira jumlah bilangan rekod untuk menentukan bilangan halaman yang diperlukan.
  • Pautan penomboran dijana dengan $pautan dan halaman aktif diserlahkan.
  • Akhir sekali, pertanyaan MySQL yang dinomborkan dilaksanakan, mengimbangi keputusan dengan $startAt dan mengehadkan bilangan baris yang dikembalikan kepada $perPage.

Atas ialah kandungan terperinci Bagaimana untuk Melaksanakan Penomboran dengan PHP dan MySQL untuk Set Data Besar?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!