


Cara menggunakan PHP untuk pertanyaan data dan mengubah halaman
Dalam pembangunan laman web, selalunya perlu untuk menanyakan data dan memaparkannya dalam halaman. Apabila jumlah data sangat besar, paging diperlukan untuk memastikan kecekapan pertanyaan dan pengalaman pengguna. Artikel ini akan memperkenalkan cara menggunakan PHP untuk menanyakan data, membelok halaman dan memaparkan gambar pada setiap halaman.
1. Pertanyaan data Pertama, kita perlu mendapatkan data yang ingin kita tanyakan dan menyimpannya dalam pangkalan data. Di sini kami mengambil jadual maklumat pelajar ringkas sebagai contoh, termasuk medan seperti nama, jantina, umur, gred, dll. Kami menggunakan pangkalan data MySQL untuk demonstrasi.
CREATE TABLE `students` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(50) NOT NULL, `gender` varchar(10) NOT NULL, `age` int(11) NOT NULL, `score` int(11) NOT NULL, `picture` varchar(100) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
Kemudian, kami memasukkan beberapa data ke dalam jadual, serta gambar pelajar. Di sini kami menggunakan gambar seperti student1.jpg dan student2.jpg.
INSERT INTO `students` (`name`, `gender`, `age`, `score`, `picture`) VALUES ('Tom', 'M', 18, 80, 'student1.jpg'); INSERT INTO `students` (`name`, `gender`, `age`, `score`, `picture`) VALUES ('Jerry', 'F', 17, 90, 'student2.jpg'); INSERT INTO `students` (`name`, `gender`, `age`, `score`, `picture`) VALUES ('Mike', 'M', 19, 75, 'student3.jpg'); INSERT INTO `students` (`name`, `gender`, `age`, `score`, `picture`) VALUES ('Mary', 'F', 18, 85, 'student4.jpg'); INSERT INTO `students` (`name`, `gender`, `age`, `score`, `picture`) VALUES ('John', 'M', 20, 70, 'student5.jpg'); INSERT INTO `students` (`name`, `gender`, `age`, `score`, `picture`) VALUES ('Jane', 'F', 19, 95, 'student6.jpg');
2
Seterusnya, kita perlu melakukan pertanyaan data dan halaman dalam PHP. Kami mentakrifkan bahawa setiap halaman memaparkan 5 keping data, dan kemudian mengira jumlah bilangan halaman dan nombor halaman semasa. Contoh kod adalah seperti berikut:
<?php // 连接数据库 $conn = mysqli_connect("localhost", "username", "password", "database"); // 每页显示的记录数 $pageSize = 5; // 当前页码 $pageNum = isset($_GET['pageNum']) ? intval($_GET['pageNum']) : 1; // 计算总记录数和总页数 $sql = "SELECT count(*) FROM students"; $result = mysqli_query($conn, $sql); $row = mysqli_fetch_row($result); $totalRecords = $row[0]; $totalPages = ceil($totalRecords / $pageSize); // 计算查询起始位置 $startIndex = ($pageNum - 1) * $pageSize; // 查询数据 $sql = "SELECT * FROM students LIMIT $startIndex, $pageSize"; $result = mysqli_query($conn, $sql); ?>
Dalam kod di atas, kami mula-mula menyambung ke pangkalan data dan menentukan bilangan rekod yang dipaparkan pada setiap halaman dan nombor halaman semasa. Kemudian, hitung jumlah bilangan rekod dan jumlah halaman, dan kira kedudukan permulaan pertanyaan berdasarkan nombor halaman semasa. Akhir sekali, lakukan pertanyaan data melalui LIMIT kata kunci dan kembalikan hasilnya.
3
Seterusnya, kita perlu memaparkan data bersama-sama gambar setiap pelajar. Di sini kami menggunakan teg HTML
<?php while ($row = mysqli_fetch_assoc($result)): ?> <div> <h3><?php echo $row['name']; ?></h3> <p>性别:<?php echo $row['gender']; ?></p> <p>年龄:<?php echo $row['age']; ?></p> <p>成绩:<?php echo $row['score']; ?></p> <img src="<?php echo $row['picture']; ?>" width="100"/> </div> <?php endwhile; ?>
Dalam kod di atas, kami menggunakan gelung sementara untuk mengulangi hasil pertanyaan dan memaparkan foto setiap pelajar menggunakan teg
Perlu diambil perhatian bahawa atribut src bagi teg img perlu menentukan laluan imej yang betul. 4. Navigasi penomboran Akhir sekali, kita perlu memaparkan navigasi paging di bahagian bawah halaman untuk memudahkan pengguna membelok halaman.
Contoh kod adalah seperti berikut:
<div> <?php if ($pageNum > 1): ?> <a href="?pageNum=<?php echo $pageNum - 1; ?>">上一页</a> <?php endif; ?> <?php for ($i = 1; $i <= $totalPages; $i++): ?> <?php if ($i == $pageNum): ?> <span><?php echo $i; ?></span> <?php else: ?> <a href="?pageNum=<?php echo $i; ?>"><?php echo $i; ?></a> <?php endif; ?> <?php endfor; ?> <?php if ($pageNum < $totalPages): ?> <a href="?pageNum=<?php echo $pageNum + 1; ?>">下一页</a> <?php endif; ?> </div>
Dalam kod di atas, kami mula-mula menentukan sama ada nombor halaman semasa lebih besar daripada 1 dan jika ya, paparkan "Halaman Sebelumnya" butang. Kemudian gunakan gelung for untuk melelaran melalui semua nombor halaman dan menjana pautan navigasi. Jika nombor halaman semasa adalah sama dengan pembolehubah gelung $i, nombor halaman semasa dipaparkan, jika tidak pautan dipaparkan.
Akhir sekali, ia dinilai sama ada nombor halaman semasa adalah kurang daripada jumlah halaman Jika ya, butang "Halaman Seterusnya" dipaparkan. rumuskan Artikel ini memperkenalkan cara menggunakan PHP untuk menanyakan data, membelok halaman dan memaparkan gambar pada setiap halaman. Perlu diingatkan bahawa untuk memastikan prestasi halaman, adalah disyorkan untuk menggunakan lakaran kecil atau mengehadkan saiz imej semasa memaparkan imej. Di samping itu, dalam pembangunan sebenar, isu seperti syarat pertanyaan data dan pengisihan data juga perlu dipertimbangkan.
Atas ialah kandungan terperinci Cara menggunakan PHP untuk pertanyaan data dan mengubah halaman. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat 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

Artikel ini membincangkan kelemahan OWASP 10 dalam strategi PHP dan mitigasi. Isu -isu utama termasuk suntikan, pengesahan yang rosak, dan XSS, dengan alat yang disyorkan untuk memantau dan mendapatkan aplikasi PHP.

Kompilasi JIT Php 8 meningkatkan prestasi dengan menyusun kod yang sering dilaksanakan ke dalam kod mesin, memberi manfaat kepada aplikasi dengan pengiraan berat dan mengurangkan masa pelaksanaan.

Artikel ini membincangkan mendapatkan muat naik fail PHP untuk mengelakkan kelemahan seperti suntikan kod. Ia memberi tumpuan kepada pengesahan jenis fail, penyimpanan selamat, dan pengendalian ralat untuk meningkatkan keselamatan aplikasi.

Artikel ini membincangkan penyulitan simetri dan asimetrik dalam PHP, membandingkan kesesuaian, prestasi, dan perbezaan keselamatan mereka. Penyulitan simetri lebih cepat dan sesuai untuk data pukal, manakala asimetrik digunakan untuk pertukaran utama yang selamat.

Artikel ini membincangkan pelaksanaan pengesahan dan kebenaran yang mantap dalam PHP untuk mencegah akses yang tidak dibenarkan, memperincikan amalan terbaik dan mengesyorkan alat peningkatan keselamatan.

Artikel ini membincangkan strategi untuk mencegah serangan CSRF di PHP, termasuk menggunakan token CSRF, kuki tapak yang sama, dan pengurusan sesi yang betul.

Artikel ini membincangkan strategi untuk melaksanakan kadar API yang mengehadkan PHP, termasuk algoritma seperti baldi token dan baldi bocor, dan menggunakan perpustakaan seperti simfoni/kadar-limiter. Ia juga meliputi pemantauan, had kadar penyesuaian secara dinamik, dan tangan

Artikel membincangkan amalan terbaik untuk pengesahan input PHP untuk meningkatkan keselamatan, memberi tumpuan kepada teknik seperti menggunakan fungsi terbina dalam, pendekatan putih, dan pengesahan sisi pelayan.
