Dalam dunia web development, form adalah komponen utama yang membuat website bisa berinteraksi dengan pengguna. Hampir semua aktivitas di web, mulai dari login, registrasi, komentar, hingga pengiriman pesan, dilakukan melalui form.
Tanpa form, website hanya bisa menampilkan informasi tanpa menerima input dari pengguna. Di sinilah peran PHP menjadi penting: menangkap, memproses, dan memvalidasi data yang dikirim dari form HTML agar bisa digunakan oleh sistem.
Artikel ini akan membahas langkah demi langkah cara membuat form sederhana dengan HTML, menangkap datanya menggunakan PHP, serta menambahkan validasi dasar agar data yang diterima tetap aman dan benar.
Form berfungsi sebagai jembatan antara pengguna dan server.
Misalnya, ketika seseorang mengisi formulir kontak di situs nusacodes.com, data seperti nama dan email dikirim ke server. Server kemudian bisa memproses data tersebut untuk disimpan di database, dikirim lewat email, atau ditampilkan kembali ke pengguna.
Contoh kasus penggunaan form:
Tanpa form, pengguna tidak punya cara untuk mengirimkan data ke server, dan web tidak akan bisa bersifat interaktif.
Langkah pertama adalah membuat struktur form di file HTML.
Berikut contoh form sederhana yang bisa disimpan sebagai index.html:
<form action="proses.php" method="POST">
<label>Nama:</label>
<input type="text" name="nama"><br>
<label>Email:</label>
<input type="email" name="email"><br>
<button type="submit">Kirim</button>
</form>
Penjelasan bagian-bagiannya:
<form> adalah tag utama yang menampung semua input pengguna.action="proses.php" menentukan ke file mana data dikirim setelah tombol submit ditekan.method="POST" menentukan cara pengiriman data (dalam hal ini, menggunakan metode POST).<input> digunakan untuk membuat kolom input, dengan atribut name sebagai identitas data yang akan dikirim.<button type="submit"> untuk mengirim data ke file tujuan.Saat tombol Kirim ditekan, data dari form akan dikirim ke proses.php melalui metode POST.
Setelah form dibuat, langkah berikutnya adalah menangkap dan menampilkan data di PHP.
Buat file baru bernama proses.php dan tambahkan kode berikut:
<?php
$nama = $_POST['nama'];
$email = $_POST['email'];
echo "Halo, $nama! Email: $email, selamat datang di Nusacodes";
?>
Penjelasan:
$_POST['nama'] digunakan untuk mengambil nilai dari input name="nama".$_POST['email'] mengambil data dari input name="email".Jika ingin mengirim data lewat URL (misalnya untuk pencarian atau navigasi), bisa menggunakan metode GET dengan $_GET['nama']. Namun untuk data pribadi seperti password atau form kontak, POST lebih aman karena tidak menampilkan data di URL.
Salah satu hal penting dalam menangani form adalah validasi data.
Validasi mencegah pengguna mengirim data kosong atau format yang salah (seperti email tidak valid). Tanpa validasi, sistem bisa menerima data yang tidak lengkap dan menyebabkan error di tahap selanjutnya.
Contoh validasi sederhana di PHP:
<?php
$nama = $_POST['nama'];
$email = $_POST['email'];
if(empty($nama) || empty($email)) {
echo "Nama dan Email wajib diisi!";
} elseif(!filter_var($email, FILTER_VALIDATE_EMAIL)) {
echo "Format email tidak valid!";
} else {
echo "Data berhasil dikirim!";
}
?>
Penjelasan logika:
empty() digunakan untuk memeriksa apakah input kosong.filter_var() dengan FILTER_VALIDATE_EMAIL memastikan format email benar.Validasi seperti ini adalah langkah pertama untuk menjaga data tetap bersih dan mencegah error sederhana.
Untuk sistem yang lebih kompleks, validasi biasanya dilakukan dua kali: di sisi klien (menggunakan JavaScript) dan di sisi server (menggunakan PHP). Tujuannya agar data benar-benar aman sebelum disimpan ke database.
Agar form di website lebih aman dan efisien, ada beberapa hal penting yang sebaiknya diterapkan:
Gunakan metode POST untuk data sensitif
Jangan kirim data seperti password, nomor telepon, atau alamat lewat GET karena akan tampil di URL.
Selalu lakukan validasi di server
Validasi di sisi klien bisa dilewati, jadi PHP harus tetap memeriksa ulang semua data.
Gunakan htmlspecialchars() untuk mencegah XSS
Misalnya:
$nama = htmlspecialchars($_POST['nama']);
Ini mencegah pengguna memasukkan kode HTML atau JavaScript berbahaya.
Gunakan atribut required di input HTML
Misalnya:
<input type="text" name="nama" required>
Ini mencegah pengguna mengirim form kosong.
Pisahkan logika dan tampilan
Simpan form di file HTML, dan logika pemrosesan di file PHP terpisah agar kode lebih rapi.
Form adalah elemen penting dalam pengembangan website interaktif.
Dengan PHP, data dari form bisa ditangkap, divalidasi, dan diproses untuk berbagai keperluan seperti login, registrasi, atau pengiriman pesan.
Langkah dasarnya sederhana:
action dan method.$_POST atau $_GET.