Rumah >pembangunan bahagian belakang >masalah PHP >paparan pertanyaan pangkalan data php

paparan pertanyaan pangkalan data php

WBOY
WBOYasal
2023-05-06 19:37:071353semak imbas

Sebagai bahasa pengaturcaraan yang digunakan secara meluas dalam pembangunan web, PHP pada asasnya tidak dapat mengelakkan pertanyaan pangkalan data dan operasi paparan. Artikel ini akan memperkenalkan secara ringkas cara menggunakan PHP untuk menanyakan pangkalan data dan membentangkan hasil pertanyaan kepada pengguna dengan cara yang cantik.

1 Sambung ke pangkalan data
Sebelum menggunakan PHP untuk menanyakan pangkalan data, anda perlu menyambung ke pangkalan data terlebih dahulu. Berikut ialah contoh kod untuk menyambung ke pangkalan data MySQL:

<?php
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "databaseName";

// 创建连接
$conn = new mysqli($servername, $username, $password, $dbname);

// 检测连接
if ($conn->connect_error) {
    die("连接失败: " . $conn->connect_error);
} 
?>

2. Pertanyaan pangkalan data
PHP menyediakan pelbagai kaedah untuk pertanyaan pangkalan data Berikut adalah dua kaedah yang biasa digunakan: mysqli dan PDO.

  1. mysqli
    mysqli ialah sambungan operasi pangkalan data MySQL yang disediakan oleh PHP Ia menyediakan satu set API berorientasikan objek dan menyokong mencegah serangan suntikan SQL. Berikut ialah contoh kod untuk menanyakan pangkalan data:
<?php
$sql = "SELECT id, name, age FROM users";
$result = $conn->query($sql);

if ($result->num_rows > 0) {
    // 输出每行数据
    while($row = $result->fetch_assoc()) {
        echo "id: " . $row["id"]. " - Name: " . $row["name"]. " - Age: " . $row["age"]. "<br>";
    }
} else {
    echo "0 结果";
}
$conn->close();
?>
  1. PDO
    PDO ialah sambungan operasi pangkalan data umum yang disediakan oleh PHP Ia menyokong pelbagai jenis pangkalan data dan hanya perlu menukar rentetan sambungan. Contoh kod untuk pertanyaan menggunakan PDO adalah seperti berikut:
<?php
$sql = "SELECT id, name, age FROM users";
$stmt = $pdo->prepare($sql);
$stmt->execute();

if ($stmt->rowCount() > 0) {
    // 输出每行数据
    while($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
        echo "id: " . $row["id"]. " - Name: " . $row["name"]. " - Age: " . $row["age"]. "<br>";
    }
} else {
    echo "0 结果";
}
?>

3 Paparan data
Selepas menanyakan data, kami perlu memaparkan data kepada pengguna. Di sini kami menggunakan HTML dan CSS untuk mencantikkan kesan paparan.

  1. Paparan senarai
    Berikut ialah paparan senarai data ringkas:
<ul>
<?php
while($row = $result->fetch_assoc()) {
    echo "<li>". $row["name"]. " - ". $row["age"]. "</li>";
}
?>
</ul>
  1. Paparan jadual
    Berikut ialah paparan ringkas tetapi mudah difahami gaya Paparan jadual:
<table>
  <tr>
    <th>ID</th>
    <th>Name</th>
    <th>Age</th>
  </tr>
  <?php while($row = $result->fetch_assoc()): ?>
  <tr>
    <td><?php echo $row['id']; ?></td>
    <td><?php echo $row['name']; ?></td>
    <td><?php echo $row['age']; ?></td>
  </tr>
  <?php endwhile; ?>
</table>

4. Langkah Berjaga-jaga Keselamatan
Apabila melakukan pertanyaan pangkalan data dan operasi paparan, anda perlu memberi perhatian kepada beberapa isu keselamatan:

  1. Suntikan SQL Serangan: Menggunakan kenyataan yang disediakan boleh mengelakkan serangan suntikan SQL dengan berkesan.
  2. Pemformatan data: Pastikan data yang dipaparkan memenuhi jangkaan pengguna dan tidak menyebabkan isu keselamatan.
  3. Keizinan dan kawalan capaian: MySQL menyediakan mekanisme keizinan dan kawalan akses yang sangat halus, yang boleh memberi kebenaran dan membatalkan kebenaran pengguna dan pangkalan data melalui penyata GRANT dan REVOKE.

Ringkasan
Artikel ini memperkenalkan secara ringkas pertanyaan pangkalan data dan operasi paparan dalam PHP, serta menyediakan kod sampel dan pertimbangan keselamatan selanjutnya. Saya harap pembaca boleh membangunkan aplikasi Web yang lebih selamat, cantik dan praktikal berdasarkan pengetahuan ini.

Atas ialah kandungan terperinci paparan pertanyaan pangkalan data php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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
Artikel sebelumnya:php kod ralat bersatuArtikel seterusnya:php kod ralat bersatu