Bagaimana untuk melaksanakan penomboran dalam PHP dan MySQL untuk set data yang besar?

DDD
Lepaskan: 2024-11-02 10:46:30
asal
948 orang telah melayarinya

How to implement pagination in PHP and MySQL for large datasets?

Penomboran dalam PHP & MySQL: Panduan Pemula

Penomboran adalah penting untuk mengurus set data yang besar dan meningkatkan pengalaman pengguna. Artikel ini menangani senario penomboran biasa dalam PHP dan MySQL.

Keperluan Pertanyaan dan Penomboran

Pertimbangkan pertanyaan MySQL berikut:

SELECT * FROM 'redirect'
WHERE 'user_id'= \''.$_SESSION['user_id'].' \' 
ORDER BY 'timestamp'
Salin selepas log masuk

Matlamatnya adalah untuk menomborkan hasil, memaparkan 10 hasil setiap halaman.

Pelaksanaan Penomboran

Kunci kepada penomboran ialah menentukan titik permulaan keputusan untuk diambil bagi setiap muka surat. Laksanakan ini dengan kod PHP berikut:

<code class="php">$perPage = 10;
$page = (isset($_GET['page'])) ? (int)$_GET['page'] : 1;
$startAt = $perPage * ($page - 1);</code>
Salin selepas log masuk

Mengira Jumlah Halaman

Untuk memaparkan pautan penomboran, kita perlu mengira jumlah halaman:

<code class="php">$query = "SELECT COUNT(*) as total FROM redirect
WHERE user_id = '".$_SESSION['user_id']."'";
$r = mysql_fetch_assoc(mysql_query($query));
$totalPages = ceil($r['total'] / $perPage);</code>
Salin selepas log masuk

Menjana Pautan Penomboran

Gelung keseluruhan bilangan halaman untuk menjana pautan penomboran:

<code class="php">$links = "";
for ($i = 1; $i <= $totalPages; $i++) {
  $links .= ($i != $page ) 
            ? "<a href='index.php?page=$i'>Page $i</a> "
            : "$page ";
}</code>
Salin selepas log masuk

Mengambil Keputusan untuk Halaman Semasa

Akhir sekali, dapatkan keputusan untuk halaman semasa:

<code class="php">$query = "SELECT * FROM 'redirect'
WHERE 'user_id'= \''.$_SESSION['user_id'].' \' 
ORDER BY 'timestamp' LIMIT $startAt, $perPage";
$result = mysql_query($query);</code>
Salin selepas log masuk

Memaparkan Hasil

Paparkan keputusan dalam format yang diingini dan sertakan pautan penomboran untuk menavigasi halaman.

Atas ialah kandungan terperinci Bagaimana untuk melaksanakan penomboran dalam PHP dan MySQL untuk set data yang 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