Rumah pembangunan bahagian belakang masalah PHP Cara menggunakan PHP untuk pertanyaan data dan mengubah halaman

Cara menggunakan PHP untuk pertanyaan data dan mengubah halaman

Mar 29, 2023 am 11:31 AM

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;
Salin selepas log masuk

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');
Salin selepas log masuk

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[&#39;pageNum&#39;]) ? intval($_GET[&#39;pageNum&#39;]) : 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);
?>
Salin selepas log masuk

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[&#39;name&#39;]; ?></h3>
    <p>性别:<?php echo $row[&#39;gender&#39;]; ?></p>
    <p>年龄:<?php echo $row[&#39;age&#39;]; ?></p>
    <p>成绩:<?php echo $row[&#39;score&#39;]; ?></p>
    <img src="<?php echo $row[&#39;picture&#39;]; ?>" width="100"/>
  </div>
<?php endwhile; ?>
Salin selepas log masuk

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>
Salin selepas log masuk

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!

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

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

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

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

OWASP Top 10 PHP: Huraikan dan mengurangkan kelemahan umum. OWASP Top 10 PHP: Huraikan dan mengurangkan kelemahan umum. Mar 26, 2025 pm 04:13 PM

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.

PHP 8 JIT (Just-in-Time) Penyusunan: Bagaimana ia meningkatkan prestasi. PHP 8 JIT (Just-in-Time) Penyusunan: Bagaimana ia meningkatkan prestasi. Mar 25, 2025 am 10:37 AM

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.

PHP Secure File Muat naik: Mencegah kelemahan berkaitan fail. PHP Secure File Muat naik: Mencegah kelemahan berkaitan fail. Mar 26, 2025 pm 04:18 PM

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.

Penyulitan PHP: Penyulitan simetri vs asimetrik. Penyulitan PHP: Penyulitan simetri vs asimetrik. Mar 25, 2025 pm 03:12 PM

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.

Pengesahan PHP & amp; Kebenaran: Pelaksanaan selamat. Pengesahan PHP & amp; Kebenaran: Pelaksanaan selamat. Mar 25, 2025 pm 03:06 PM

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.

PHP CSRF Perlindungan: Bagaimana untuk mencegah serangan CSRF. PHP CSRF Perlindungan: Bagaimana untuk mencegah serangan CSRF. Mar 25, 2025 pm 03:05 PM

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

PHP API Kadar Mengehadkan: Strategi Pelaksanaan. PHP API Kadar Mengehadkan: Strategi Pelaksanaan. Mar 26, 2025 pm 04:16 PM

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

Pengesahan Input PHP: Amalan Terbaik. Pengesahan Input PHP: Amalan Terbaik. Mar 26, 2025 pm 04:17 PM

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.

See all articles