Rumah > pembangunan bahagian belakang > tutorial php > Bagaimana untuk menggunakan pertanyaan pangkalan data dan fungsi halaman hasil untuk halaman data dan paparan dalam PHP?

Bagaimana untuk menggunakan pertanyaan pangkalan data dan fungsi halaman hasil untuk halaman data dan paparan dalam PHP?

王林
Lepaskan: 2023-07-25 20:26:01
asal
1527 orang telah melayarinya

Bagaimana untuk menggunakan pertanyaan pangkalan data dan fungsi halaman hasil untuk halaman data dan paparan dalam PHP?

Apabila membangunkan aplikasi web, selalunya perlu memproses sejumlah besar data dan memaparkannya pada halaman, seperti senarai produk, senarai berita, dsb. Apabila jumlah data adalah besar, memuatkan semua data ke halaman sekaligus bukan sahaja menjejaskan prestasi, tetapi juga boleh menyebabkan halaman dimuatkan dengan perlahan. Pada masa ini, halaman data adalah cara yang biasa dan berkesan untuk menanganinya.

Artikel ini akan memperkenalkan cara menggunakan pertanyaan pangkalan data dan fungsi halaman hasil dalam PHP untuk halaman dan paparan data. Kami akan menggunakan MySQL sebagai contoh pangkalan data dan menerangkan secara terperinci dengan contoh kod.

Langkah 1: Sambungkan ke pangkalan data

Pertama, kita perlu menggunakan sambungan MySQLi PHP atau perpustakaan PDO untuk menyambung ke pangkalan data MySQL. Berikut ialah contoh kod untuk menyambung ke pangkalan data:

<?php
$servername = "localhost";
$username = "your_username";
$password = "your_password";
$dbname = "your_database";

// 使用MySQLi连接数据库
$conn = new mysqli($servername, $username, $password, $dbname);
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
}

// 使用PDO连接数据库
try {
    $conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
    $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    echo "Connected successfully";
} catch(PDOException $e) {
    echo "Connection failed: " . $e->getMessage();
}
?>
Salin selepas log masuk

Dalam kod di atas, anda perlu menggantikan nama_pengguna_anda, kata laluan_anda dan pangkalan data_anda dengan nama pengguna Pangkalan Data sebenar, kata laluan dan nama pangkalan data. your_usernameyour_passwordyour_database替换为实际的数据库用户名、密码和数据库名。

步骤2:执行查询和分页

接下来,我们将执行查询,并使用分页函数对结果进行分页。以下是一个示例的分页函数代码:

<?php
function getProducts($conn, $limit, $offset) {
    $sql = "SELECT * FROM products LIMIT $limit OFFSET $offset";
    $stmt = $conn->prepare($sql);
    $stmt->execute();

    $result = $stmt->fetchAll(PDO::FETCH_ASSOC);
    return $result;
}

$limit = 10; // 每页显示的数据数量
$page = isset($_GET['page']) ? $_GET['page'] : 1; // 当前页码
$offset = ($page - 1) * $limit; // 计算偏移量

$products = getProducts($conn, $limit, $offset);
$totalRows = $conn->query("SELECT COUNT(*) FROM products")->fetchColumn();
$totalPages = ceil($totalRows / $limit);
?>
Salin selepas log masuk

在以上代码中,getProducts函数接受连接对象、每页显示的数据量$limit和偏移量$offset作为参数,执行查询并返回查询结果。$limit$offset是通过计算当前页码$page来得到的。

$totalRows变量用于保存总数据行数,通过执行SELECT COUNT(*)查询获取。$totalPages

Langkah 2: Laksanakan pertanyaan dan penomboran

Seterusnya, kami akan melaksanakan pertanyaan dan menomborkan keputusan menggunakan fungsi penomboran. Berikut ialah contoh kod fungsi halaman:

<?php
foreach ($products as $product) {
    echo "<h3>{$product['name']}</h3>";
    echo "<p>{$product['description']}</p>";
    echo "<hr>";
}

// 分页链接
for ($i = 1; $i <= $totalPages; $i++) {
    echo "<a href='?page=$i'>$i</a> ";
}
?>
Salin selepas log masuk
Dalam kod di atas, fungsi getProducts menerima objek sambungan, jumlah data yang dipaparkan setiap halaman $limit dan offset$offset digunakan sebagai parameter untuk melaksanakan pertanyaan dan mengembalikan hasil pertanyaan. $limit dan $offset diperoleh dengan mengira nombor halaman semasa $page.

Pembolehubah $totalRows digunakan untuk menyimpan jumlah bilangan baris data, yang diperoleh dengan melaksanakan pertanyaan SELECT COUNT(*). Pembolehubah $totalPages memegang jumlah bilangan halaman, dikira dengan membahagikan jumlah bilangan baris data dengan jumlah data yang dipaparkan pada setiap halaman.

Langkah 3: Paparkan hasil penomboran🎜🎜Akhir sekali, kami akan menggunakan HTML dan PHP untuk memaparkan hasil penomboran. Berikut ialah contoh kod mudah: 🎜rrreee🎜 Dalam kod di atas, kami menggunakan gelung untuk melelang melalui hasil pertanyaan dan memaparkan nama dan penerangan setiap produk pada halaman. Pautan penomboran dijana secara kitaran berdasarkan jumlah halaman, dan setiap pautan sepadan dengan nombor halaman yang berbeza. 🎜🎜Melalui tiga langkah di atas, kami boleh menggunakan pertanyaan pangkalan data dan fungsi halaman hasil untuk menomborkan dan memaparkan data dalam PHP dengan mudah. Ini meningkatkan prestasi pemuatan halaman dan meningkatkan pengalaman pengguna. Sudah tentu, dalam pembangunan sebenar, anda mungkin perlu menambah beberapa fungsi tambahan, seperti carian, pengisihan, dll., untuk memenuhi lebih banyak keperluan. 🎜

Atas ialah kandungan terperinci Bagaimana untuk menggunakan pertanyaan pangkalan data dan fungsi halaman hasil untuk halaman data dan paparan dalam PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
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