Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Pemprosesan borang PHP: pertanyaan dan penapisan data borang

Pemprosesan borang PHP: pertanyaan dan penapisan data borang

PHPz
PHPzasal
2023-08-07 18:17:05939semak imbas

Pemprosesan borang PHP: pertanyaan dan penapisan data borang

  1. Pengenalan
    Dalam pembangunan web, borang ialah cara interaksi yang penting Pengguna boleh menyerahkan data kepada pelayan melalui borang untuk pemprosesan selanjutnya. Artikel ini akan memperkenalkan cara menggunakan PHP untuk memproses pertanyaan dan fungsi penapis data borang.
  2. Reka bentuk dan penyerahan borang
    Pertama, kita perlu mereka bentuk borang yang merangkumi fungsi pertanyaan dan penapisan. Elemen bentuk biasa termasuk kotak input, senarai juntai bawah, butang radio, kotak semak, dsb., yang boleh direka bentuk mengikut keperluan khusus. Apabila pengguna menyerahkan borang, data akan dihantar ke pelayan dalam mod POST atau GET.

Berikut ialah contoh borang pertanyaan dan penapis mudah:

<form action="process.php" method="POST">
  <label for="name">姓名:</label>
  <input type="text" id="name" name="name">
  
  <label for="gender">性别:</label>
  <select id="gender" name="gender">
    <option value="Male">男</option>
    <option value="Female">女</option>
  </select>
  
  <label for="age">年龄:</label>
  <input type="number" id="age" name="age">
  
  <input type="submit" value="查询">
</form>
  1. Pemprosesan sisi pelayan
    Apabila pengguna menyerahkan borang, pelayan akan menerima data borang, dan kami boleh menggunakan PHP untuk memproses data. Mula-mula, dapatkan data borang dalam fail process.php:
$name = $_POST['name'];
$gender = $_POST['gender'];
$age = $_POST['age'];

Seterusnya, kita boleh menggunakan data ini untuk menanyakan maklumat yang berkaitan dalam pangkalan data. Katakan kita mempunyai jadual pelajar yang mengandungi medan seperti nama, jantina, umur, dsb. Berikut ialah contoh pertanyaan pangkalan data yang mudah:

// 连接数据库
$conn = mysqli_connect('localhost', 'username', 'password', 'database');

// 查询语句
$sql = "SELECT * FROM students WHERE 1=1";

// 添加查询条件
if (!empty($name)) {
  $sql .= " AND name LIKE '%$name%'";
}

if (!empty($gender)) {
  $sql .= " AND gender='$gender'";
}

if (!empty($age)) {
  $sql .= " AND age=$age";
}

// 执行查询
$result = mysqli_query($conn, $sql);

// 处理查询结果
if (mysqli_num_rows($result) > 0) {
  while ($row = mysqli_fetch_assoc($result)) {
    // 处理每一行数据
  }
} else {
  echo "没有找到相关记录";
}

// 关闭数据库连接
mysqli_close($conn);

Dalam contoh di atas, kami melaksanakan pertanyaan dinamik dengan menyambung penyataan SQL. Mula-mula, kami mentakrifkan pernyataan SELECT awal, dan kemudian secara dinamik menambah klausa WHERE berdasarkan syarat pertanyaan yang diserahkan oleh borang.

Akhir sekali, kami menggunakan fungsi mysqli_query untuk melaksanakan pertanyaan dan fungsi mysqli_num_rows untuk mendapatkan bilangan baris dalam hasil pertanyaan. Jika terdapat hasil pertanyaan, anda boleh menggunakan fungsi mysqli_fetch_assoc untuk memproses baris data demi baris.

  1. Paparkan hasil pertanyaan
    Langkah terakhir ialah untuk memaparkan hasil pertanyaan kepada pengguna. Data boleh dipaparkan melalui jadual HTML:
if (mysqli_num_rows($result) > 0) {
  echo "<table>";
  echo "<tr><th>姓名</th><th>性别</th><th>年龄</th></tr>";
  
  while ($row = mysqli_fetch_assoc($result)) {
    echo "<tr>";
    echo "<td>".$row['name']."</td>";
    echo "<td>".$row['gender']."</td>";
    echo "<td>".$row['age']."</td>";
    echo "</tr>";
  }
  
  echo "</table>";
} else {
  echo "没有找到相关记录";
}

Dalam kod di atas, kami melingkari setiap rekod hasil pertanyaan dan mengeluarkannya dalam bentuk jadual.

  1. Ringkasan
    Artikel ini memperkenalkan cara menggunakan PHP untuk memproses pertanyaan dan fungsi penapisan data borang. Dengan mendapatkan data borang, membina pernyataan pertanyaan SQL secara dinamik, dan memaparkan hasil pertanyaan kepada pengguna melalui jadual HTML, pertanyaan lengkap dan fungsi penapisan direalisasikan.

Sebenarnya, pemprosesan borang dan pertanyaan data adalah fungsi biasa dalam pembangunan web, dan artikel ini hanya memberikan contoh mudah. Dalam pembangunan sebenar, lebih banyak kod dan teknologi mungkin diperlukan bergantung pada kerumitan keperluan khusus. Walau bagaimanapun, dengan menguasai prosedur pemprosesan asas dan teknologi yang berkaitan, asas yang baik boleh disediakan untuk pembangunan seterusnya.

Atas ialah kandungan terperinci Pemprosesan borang PHP: pertanyaan dan penapisan data borang. 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