Anda di halaman 1dari 4

PRINSIP PENGIRIMAN DATA PADA APLIKASI WEB

Memilih Metode untuk Menangani Form pada


PHP

Sebelumnya telah ditulis tentang cara menangani action form dengan PHP. Dimana
setiap data dari form yang dikirim ke server ditangani oleh parameter yang diset pada
atribut ACTION pada form. Perlu diketahui bahwa selain atribut ACTION, pada form
juga ada atribut METHOD. Atribut ini dipakai untuk menentukan metode pengiriman
data dari pengguna ke server.

Ada dua metode yang disediakan yaitu GET dan POST. Masing-masing metode ini
menghasilkan array assosiatif dengan key name mengacu ke nama elemen form. Dua
cara penanganan Action form juga bisa diterapkan pada metode GET maupun POST.

1. Metode GET

Adalah metode pengiriman data melalui URL. Metode GET menghasilkan variabel
bertipe array yang bisa dipanggil dengan variabel global $_GET["nama-elemen-
form"]. Karena terlihat pada URL, maka metode GET tidak bersifat rahasia dan oleh
karena itu tidak disarankan untuk mengirim data yang bersifat rahasia seperti
password.

Saat form disubmit maka data dari form dikirim ke halaman action PHP melalui
URL, misal: proses.php?nama=agus&alamat=jepara. Kelebihan dari metode GET
adalah bisa disimpan ke dalam bookmark browser, karena memang berupa URL.
Kekurangan metode GET selain tidak rahasia adalah adanya batasan jumlah informasi
yang dapat dikirim yaitu 2000 karakter.

Contoh penggunaan metode GET yang kita jumpai sehari-hari adalah pada sistem
pencarian di website search engine, misal www.google.com. Prinsip kerjanya adalah
saat ditekan tombol CARI maka akan tampil hasil pencarian dengan URL yang
diikuti dengan kata pencarian.

Contoh script untuk menangani form dengan metode GET

Script untuk membuat form masukan :


view plainprint?

1. <html>

2. <body>

3. <form action="proses.php" method="get">

4. Kata Pencarian: <input type="text" name="cari"><br>

5. <input type="submit">

6. </form>

7. </body>

8. </html>

Script untuk menangani data dari form masukan pada file proses.php :
view plainprint?

1. <html>

2. <body>

3. Kata Pencarian Anda: <?php echo $_GET["cari"]; ?><br>

4. </body>

5. </html>

Penjelasan script :

Saat tombol submit ditekan maka form akan mengirim data ke file proses.php dengan
metode GET. Hal ini menyebabkan URL proses.php diikuti dengan variabel cari
dengan value berupa kata pencarian yang dimasukkan pada input text.
Untuk lebih jelas bisa dilihat gambar berikut ini untuk masukan kata pencarian=
burung

2. Metode POST

Adalah metode pengiriman data melalui protokol HTTP POST. Jadi data yang
dikirim lebih aman karena tidak terlihat oleh pengguna. Metode POST adalah metode
yang lebih banyak digunakan oleh developer. Metode POST juga menghasilkan
variabel bertipe array seperti GET yang bisa dipanggil dengan variabel global
$_POST["nama-elemen-form"].

Saat form disubmit maka data dari form dikirim ke halaman action PHP melalui
sistem request pada protokol HTTP POST. Karena data tidak ditampilkan maka cara
ini dianggap lebih aman dibanding metode GET. Kelebihan metode POST yang lain
adalah tidak ada batasan dalam pengiriman data. Metode POST juga mendukung
fungsi canggih seperti dukungan untuk multi-bagian masukan biner saat mengupload
file ke server.

Satu-satunya kelemahan dari metode POST adalah tidak mungkin melakukan


bookmark halaman karena informasi tidak ditaruh pada URL seperti metode GET.

Contoh script untuk menangani form dengan metode GET

Script untuk membuat form masukan :


view plainprint?

1. <html>

2. <body>

3. <form action="proses.php" method="post">


4. Kata Pencarian: <input type="text" name="cari"><br>

5. <input type="submit">

6. </form>

7. </body>

8. </html>

Script untuk menangani data dari form masukan pada file proses.php :
view plainprint?

1. <html>

2. <body>

3. Kata Pencarian Anda: <?php echo $_POST["cari"]; ?><br>

4. </body>

5. </html>

Penjelasan script :

Saat tombol submit ditekan maka form akan mengirim data ke file proses.php dengan
metode POST. Data dari form di kirim melalui jalur protokol HTTP POST. Sehingga
URL tetap bersih tanpa diikuti variabel dibelakangnya.