Perbedaan get dan post php

Teknik mengirimkan data untuk aplikasi berbasis web ada dua cara yaitu dengan GET dan POST. Sayangnya, banyak programmer pemula tidak begitu paham dengan POST dan GET, padahal pemahaman tentang dua teknik pengiriman ini adalah hal wajib bagi setiap programmer web. Agar tidak panjang lebar, saya akan menjelaskan perbedaan ini dengan contoh. Saya percaya bahwa satu satunya cara belajar adalah dengan contoh agar orang lain bisa memahaminya.

Cara deklarasi Form

perbedaan pertama terletak pada deklarasinya di form

<form method='GET' action='foo.php'> ... </form> <!-- teknik POST --> <form method='POST' action='foo.php'> ... </form>

Jika sebuah form tidak ditentukan methode pengiriman datanya secara ekplisit, maka secara default, form tersebut menggunakan GET.

Cara mengirim data

perbedaan kedua terletak pada cara mengirimkan data, pada GET, data di tambahkan di alamat URLnya sedangkan POST tidak.

cara GET mengirim data dengan cara menambahkan data ke URL

Efek samping dari cara mengirim data adalah GET tidak cocok dipakai untuk mengirim data yang bersifat rahasia seperti PIN, password dan sejenisnya. Efek samping lain, GET tidak cocok dipakai untuk mengirim data dalam jumlah besar. GET hanya cocok untuk mengirim data dalam jumlah kecil, sedangkan post cocok dipakai untuk mengirim data dalam jumlah besar seperti upload data, menulis blog atau artikel dan sejenisnya.

Namun, kelebihan dari GET adalah hasil dari proses GET bisa di bookmark. Contoh paling nampak adalah Google. Google menggunakan method GET dalam mengirim data sehingga hasil pencariannya bisa di Bookmark. Nah dah paham sekarang?

Variabel di PHP dan cara menanganinya

PHP mempunyai variable system bernama $_GET untuk menampung data yang dikirim dengan methode GET dan $_POST untuk mengirim data dengan method POST.
berhatikan cuplikan kode php berikut ini.

Contoh form dengan Method GET

//form dengan methode GET dan cara php menanganinya <form method="GET" action=""> <label> username </label><input type='text' name='username'></br> <label> Password </label><input type='password' name='password'></br> <button type="submit">Submit </button> </form> <? if($_GET){ $username=$_GET['username']; $password=$_GET['password']; echo "Selamat datang $username"; } ?>

Contoh form dengan Method POST

<form method="POST" action=""> <label> username </label><input type='text' name='username'> <label> Password </label><input type='password' name='password'> <button type="submit">Submit </button> </form> <? if($_POST){ $username=$_POST['username']; $password=$_POST['password']; echo "Selamat datang $username"; } ?>

Gimana? sekarang paham kan? konsep ini harus tertanam dalam dalam jika anda ingin mendalami pemrograman Web apapun bahasa yang anda pakai!

Ketika kita membuat form dengan html tentu kita akan mengenal atribut method pada tag <form> terdapat dua nilai dari atribut method yaitu GET dan POST. Pada postingan ini kita akan belajar perbedaan method get dan post dan kapan sebaiknya menggunakan kedua jenis method tersebut.

Kita perlu cermat untuk menggunakan baik method GET maupun POST. Untuk alasan keamanan sebaiknya menggunakan POST, namun untuk form dengan data yang dianggap tidak privasi, bisa menggunakan GET. Mari simak pembahasan berikut untuk kita dapat melihat secara jelas perbedaan dari kedua method tersebut.

Contoh Penggunaan method POST

Contoh dibawah ini adalah form html untuk input text field nama dan button kirim

<html> <head> <title>Penggunaan Method POST</title> </head> <body> <form action="#" method="post"> Nama: <input type="text" name="nama"><br> <input type="submit"> </form> <?php if (isset($_POST["nama"])) { echo "Nama : ".$_POST["nama"]; } ?> </body> </html>

Ketika kita menginput pada field nama, kemudian mengklik tombol kirim maka form akan dikirim ke file post.php sendiri. Coba perhatikan pada atribut action=”#” tanda # disini berarti form tersebut dituju untuk file itu sendiri. data akan di proses dan dikirim menggunakan method post.

Baca juga : Menampilkan gambar di html

Selanjutnya coba perhatikan sintak bagian ini

<?php if (isset($_POST["nama"])) { echo "Nama : ".$_POST["nama"]; } ?>

Di bagian ini kita membuat kondisi dimana jika ada kiriman form aktif lewat variabel global $_POST dengan nama “nama” maka akan menampilkan nama yang kita inputkan.

Perhatikan pada bagian URL sebelum dan sesudah tombol kirim di klik ada perbedaan dimana sebelumnya belum ada tanda # namun setelah mengklik tanda # muncul pada url. hal ini karena form dikirim lewat atribut action yang kita buat dengan nilai #. Sehingga form yang dikirim dengan tanda # akan mengirim ke file itu sendiri.

Contoh Penggunaan method GET

Selanjutnya kita buat form yang sama, namun berbeda pada bagian method. pada contoh ini kita menggunakan methos GET.

<html> <head> <title>Penggunaan Method GET</title> </head> <body> <form action="#" method="get"> Nama: <input type="text" name="nama"><br> <input type="submit"> </form> <?php if (isset($_GET["nama"])) { echo "Nama : ".$_GET["nama"]; } ?> </body> </html>

Pada form diatas kita membuat form dengan method get, ketika tombol kirim di klik maka form akan di kirim dan diproses. Untuk menangkap/mengambil nilai dari kiriaman form dengan method GET gunakan variabel global $_GET.

<?php if (isset($_GET["nama"])) { echo "Nama : ".$_GET["nama"]; } ?>

Ketika terdapat nilai pada variabel global $_GET dengan nama “nama” maka akan menampilkan isi dari variabel nama tersebut.

Perhatikan pada gambar diatas, jika kita menggunakan method GET maka variabel dan nilainya akan tampil di URL semua orang dapat melihatnya. variabel dan nilainya mempunyai batasan ketika tampil di URL. Batasannya sekitar 2000 karakter. Karena variabel ditampilkan di URL, halaman tersebut dapat di bookmark.

Mungkin anda berminat membaca : Cara membuat login di PHP

Kapan menggunakan method POST dan GET ?

#Method GET

  • Jangan gunakan GET bila kita ingin membuat form untuk data yang sensitif/ mempunyai privasi, misalnya username,password (karena akan tampil di URL)
  • Sebaliknya gunakan GET untuk data dengan informasi yang umum, seperti nama,email atau lainnya
  • Gunakan method GET untuk data yang relatif kecil

#Method POST

  • Gunakan method POST untuk jenis informasi data pribadi misalnya username dan password ,karena lebih aman dibandingkan method GET dan data tidak akan tampil di URL
  • Gunakan method POST untuk data yang relatif besar.

Demikian perbedaan antara penggunaan method GET dan POST. Silahkan kalian coba langsung dan lihat perbedaannya. Beri komentar kamu dibawah ini bila ada yang ingin ditanyakan.

Kapan menggunakan method GET dan POST?

Pemakaian method POST ini digunakan untuk mengirimkan data yang penting / kredensial dan data yang orang lain tidak boleh tau / secret data, seperti password, dan sebagainya. Itulah yang dimaksud dengan “Mengirimkan data secara langsung”. 1. Method GET Mengirimkan Data Tidak Langsung.

Apa itu POST dalam PHP?

Method POST adalah metode pengiriman data yang Datanya tidak disimpan pada URL. Data pada method POST ini tetap dikirimkan akan tetapi tidak ditampilan pada URL seperti GET . Method POST ini biasanya digunakan saat registrasi yang membutuhkan input email dan password yang seharusnya tidak muncul di URL.

Kapan kita sebaiknya menggunakan method GET?

Kapan menggunakan method POST dan GET ?.
Jangan gunakan GET bila kita ingin membuat form untuk data yang sensitif/ mempunyai privasi, misalnya username,password (karena akan tampil di URL).
Sebaliknya gunakan GET untuk data dengan informasi yang umum, seperti nama,email atau lainnya..

Postingan terbaru

LIHAT SEMUA