- Apa Itu $_GET dan $_POST?
- Contoh Form dengan GET
- Contoh Form dengan POST
- Perbedaan GET vs POST
- Validasi Sederhana
- Kesimpulan
Halo teman-teman semuanya, pada artikel sebelumnya, kita sudah belajar tentang include dan require untuk menyusun kode PHP secara modular.
Kali ini, kita akan masuk ke salah satu topik yang sangat penting dalam pengembangan web, yaitu bagaimana cara menangani data dari form menggunakan $_GET dan $_POST.
Dua variabel superglobal ini memungkinkan kita untuk mengambil data dari pengguna melalui form HTML dan memprosesnya di server dengan PHP.
Apa Itu $_GET dan $_POST?
$_GET dan $_POST adalah array asosiatif bawaan PHP yang berisi data yang dikirimkan dari form HTML.
$_GET: digunakan saat form dikirim melalui methodGET. Data dikirim lewat URL.$_POST: digunakan saat form dikirim melalui methodPOST. Data dikirim lewat body (tidak terlihat di URL).
Contoh Form dengan GET
<!-- file: form_get.html -->
<form action="proses_get.php" method="GET">
<label>Nama:</label>
<input type="text" name="nama">
<button type="submit">Kirim</button>
</form>
// file: proses_get.php
<?php
echo "Halo, " . $_GET['nama'];
?>
Penjelasan:
- Saat form dikirim, URL akan menjadi:
proses_get.php?nama=Ismail $_GET['nama']akan berisiIsmail
Contoh Form dengan POST
<!-- file: form_post.html -->
<form action="proses_post.php" method="POST">
<label>Email:</label>
<input type="email" name="email">
<button type="submit">Kirim</button>
</form>
// file: proses_post.php
<?php
echo "Email kamu: " . $_POST['email'];
?>
Penjelasan:
- Data dikirim lewat body, tidak terlihat di URL.
$_POST['email']akan berisi data yang diketik pengguna di form.
Perbedaan GET vs POST
| Perbandingan | GET | POST |
|---|---|---|
| Tampil di URL | Ya | Tidak |
| Kapasitas Data | Terbatas (sekitar 2000 karakter) | Lebih besar |
| Keamanan | Kurang aman | Lebih aman |
| Cocok untuk | Pencarian, filter | Login, form pendaftaran |
Validasi Sederhana
Sebelum menggunakan data dari form, sebaiknya kita pastikan datanya ada menggunakan isset():
<?php
if (isset($_POST['email'])) {
echo "Email: " . $_POST['email'];
} else {
echo "Data belum dikirim.";
}
?>
Kesimpulan
$_GET dan $_POST adalah dua cara utama untuk menangani input dari pengguna di PHP. GET cocok untuk permintaan yang tidak sensitif seperti pencarian, sedangkan POST lebih aman untuk data penting seperti password dan informasi pribadi.
Di artikel selanjutnya, kita akan membahas bagaimana cara memvalidasi dan memfilter input form secara lebih aman menggunakan filter_var() dan htmlspecialchars() di PHP .
Terima Kasih
Artikel ini dibaca sebanyak 2.862 kali
{ setTimeout(() => { showShimmer = false; }, 300); })"
:class="{'opacity-0': !loaded, 'opacity-100': loaded}"
class="lazy w-full h-auto rounded-xl border border-white dark:border-neutral-700/80 transition-opacity duration-500"
loading="lazy"
/>
SAWERIA
Memuat komentar...