Mata Kuliah: Pemrograman Berbasis Web
π§ 1. Pengertian Form Handling
8
π Deskripsi
Form Handling adalah proses menerima, mengirim, dan mengolah data dari pengguna melalui form HTML ke backend (misalnya PHP).
π§ Narasi
Setiap kali pengguna mengisi formβseperti login, registrasi, atau pencarianβdata tersebut dikirim ke server untuk diproses. Proses inilah yang disebut form handling. Tanpa form handling, web tidak bisa menerima input pengguna secara dinamis.
π§© 2. Struktur Dasar Form HTML
8
π Deskripsi
Form HTML terdiri dari beberapa elemen utama:
π§± Tabel Elemen Form
| Elemen | Fungsi |
|---|---|
<form> | Wadah utama |
<input> | Input data |
<label> | Keterangan |
<button> | Tombol submit |
π» Contoh
<form action="proses.php" method="POST">
Nama: <input type="text" name="nama">
<button type="submit">Kirim</button>
</form>
π§ Narasi
Form berfungsi sebagai jembatan antara pengguna dan server.
π 3. Metode Pengiriman Data (GET vs POST)
7
π Deskripsi
Data form dapat dikirim menggunakan dua metode:
π§± Tabel Perbandingan
| Aspek | GET | POST |
|---|---|---|
| Lokasi data | URL | Body |
| Keamanan | Rendah | Lebih aman |
| Kapasitas | Terbatas | Besar |
π§ Narasi
Gunakan:
- GET β untuk pencarian
- POST β untuk data sensitif (login, password)
π₯ 4. Mengambil Data Form di Backend (PHP)
7
π Deskripsi
PHP menggunakan superglobal untuk mengambil data.
π» Contoh
$nama = $_POST['nama'];
echo $nama;
π§ Narasi
$_POST dan $_GET adalah variabel khusus untuk menangkap data dari form.
β 5. Validasi Form
6
π Deskripsi
Validasi memastikan data yang dimasukkan benar.
π§± Jenis Validasi
| Jenis | Keterangan |
|---|---|
| Client-side | HTML/JavaScript |
| Server-side | PHP |
π» Contoh
if (empty($_POST['nama'])) {
echo "Nama wajib diisi";
}
π§ Narasi
Validasi penting untuk menjaga kualitas dan keamanan data.
π 6. Keamanan Form Handling
7
π Deskripsi
Form rentan terhadap serangan.
π§± Teknik Keamanan
| Teknik | Fungsi |
|---|---|
| Sanitasi | Membersihkan input |
| Validasi | Memastikan data valid |
| Escape | Mencegah XSS |
π» Contoh
$nama = htmlspecialchars($_POST['nama']);
π§ Narasi
Tanpa keamanan, form bisa menjadi pintu masuk serangan seperti SQL Injection.
π 7. Form dengan Banyak Input
7
π Deskripsi
Form dapat memiliki berbagai jenis input.
π§± Jenis Input
| Input | Fungsi |
|---|---|
| text | Teks |
| radio | Pilihan tunggal |
| checkbox | Pilihan banyak |
| select | Dropdown |
π» Contoh
<input type="radio" name="jk" value="L"> Laki-laki
<input type="radio" name="jk" value="P"> Perempuan
π§ Narasi
Berbagai input memungkinkan pengumpulan data yang lebih kompleks.
π 8. Upload File dengan Form
7
π Deskripsi
Form dapat digunakan untuk upload file.
π» Contoh
<form method="POST" enctype="multipart/form-data">
<input type="file" name="file">
</form>
π§ Narasi
enctype="multipart/form-data" wajib digunakan untuk upload file.
π 9. Redirect dan Feedback
7
π Deskripsi
Setelah proses, user perlu feedback.
π» Contoh
header("Location: sukses.php");
π§ Narasi
Feedback meningkatkan pengalaman pengguna.
β οΈ 10. Kesalahan Umum
8
π Deskripsi
Kesalahan yang sering terjadi:
- Tidak ada atribut
name - Salah method
- Tidak validasi
π§ Narasi
Kesalahan kecil dapat menyebabkan data tidak terkirim.
π§ͺ 11. Studi Kasus Mini Project
π― Tugas
Buat sistem:
- Form registrasi
- Validasi input
- Simpan data
- Tampilkan hasil
π― 12. Kesimpulan
- Form adalah dasar interaksi web
- GET & POST memiliki fungsi berbeda
- Validasi dan keamanan sangat penting
- Backend memproses data form
π Penutup
Materi ini menjadi dasar untuk:
β‘οΈ CRUD PHP + MySQL
β‘οΈ Sistem login
β‘οΈ Web aplikasi dinamis