Mengendalikan Borang dan Data Pengguna dalam PHP

Apabila membina aplikasi web, adalah perkara biasa untuk mempunyai borang yang membolehkan pengguna memasukkan data. Dalam PHP, kami boleh mengendalikan penyerahan borang dan memproses data pengguna. Dalam artikel ini, kami akan meneroka cara mengendalikan borang dan data pengguna dalam PHP.

 

Mencipta Borang HTML

Untuk membuat borang HTML, kami menggunakan <form> teg bersama-sama dengan pelbagai elemen input seperti <input>, <select>, dan <textarea>. Berikut ialah contoh bentuk mudah:

<form method="POST" action="process.php">  
  <label for="name">Name:</label>  
  <input type="text" id="name" name="name">  
  
  <label for="email">Email:</label>  
  <input type="email" id="email" name="email">  
  
  <input type="submit" value="Submit">  
</form>  

Dalam contoh di atas, kami mempunyai borang dengan dua medan input untuk nama dan e-mel. Atribut borang method ditetapkan kepada "POST", dan action atribut menentukan URL yang mana data borang akan diserahkan.

 

Mengendalikan Penyerahan Borang

Untuk mengendalikan penyerahan borang dalam PHP, kita perlu mencipta fail PHP berasingan yang akan memproses data yang diserahkan. Berikut ialah contoh skrip pemprosesan borang asas:

<?php  
if($_SERVER['REQUEST_METHOD'] === 'POST') {  
  $name = $_POST['name'];  
  $email = $_POST['email'];  
  
  // Perform validation and data processing here  
  
  // Redirect to a thank you page  
  header('Location: thankyou.php');  
  exit;  
}  
?>  

Dalam skrip di atas, kami menggunakan superglobal $_POST untuk mengakses data borang yang diserahkan melalui kaedah "POST". Kita boleh mendapatkan semula nilai medan borang menggunakan nama masing-masing( name dan email dalam kes ini). Kami kemudiannya boleh melakukan sebarang pengesahan dan pemprosesan data yang diperlukan.

Selepas memproses data borang, adalah perkara biasa untuk mengubah hala pengguna ke halaman terima kasih atau halaman lain yang sesuai. Dalam contoh, kami menggunakan header() fungsi untuk menghantar pengepala ubah hala ke penyemak imbas.

 

Mengesahkan Input Pengguna

Mengesahkan input pengguna adalah penting untuk memastikan integriti dan keselamatan data. PHP menyediakan pelbagai fungsi dan teknik untuk pengesahan input, seperti filter_var() dan ungkapan biasa. Berikut ialah contoh mengesahkan alamat e-mel:

$email = $_POST['email'];  
  
if(filter_var($email, FILTER_VALIDATE_EMAIL)) {  
  // Email is valid  
} else {  
  // Invalid email  
}  

Dalam contoh di atas, kami menggunakan filter_var() fungsi dengan FILTER_VALIDATE_EMAIL penapis untuk mengesahkan alamat e-mel. Jika e-mel itu sah, kami boleh meneruskan pemprosesan selanjutnya. Jika tidak, kami boleh mengendalikan ralat dengan sewajarnya.

 

Membersihkan Input Pengguna

Membersihkan input pengguna membantu menghalang kelemahan keselamatan seperti suntikan SQL dan skrip merentas tapak(XSS). PHP menyediakan fungsi seperti htmlspecialchars() dan fungsi khusus pangkalan data untuk sanitasi. Berikut ialah contoh membersihkan input pengguna:

$name = $_POST['name'];  
  
$sanitizedName = htmlspecialchars($name, ENT_QUOTES, 'UTF-8');  
  
// Use the sanitized name for further processing  

Dalam contoh di atas, kami menggunakan htmlspecialchars() fungsi untuk membersihkan nama yang diberikan pengguna. Fungsi ini menukar aksara khas kepada entiti HTML mereka, menghalang sebarang potensi suntikan HTML atau skrip.

 

Kesimpulannya, pengendalian borang dan data pengguna adalah bahagian penting dalam pembangunan web PHP. Dengan mencipta borang HTML, memproses penyerahan borang, mengesahkan input pengguna dan membersihkan data, kami boleh memastikan integriti dan keselamatan aplikasi kami.