Pada dasarnya, metode POST dan GET memiliki kegunaan yang sama yaitu untuk mengirimkan value variabel ke halaman lain atau mengirimkan ke database.
Pengiriman data itu biasanya dengan menggunakan formulir. Perbedaan kedua method tersebut sangat kecil namun SANGAT terlihar dengan jelas.
Method GET ketika mengirimkan data akan menambahkan pada URI, sedangkan kalo method POST dikirim ke server dengan diincludekan pada sebuah permintaan (body of request) dan bukan melalui URI dan hasil dari method POST ini nggak bersifat cacheable (dapat disimpan dalam cache)
oke, untuk lebih jelasnya mari ane buatkan contoh:
?
1
2
3
4
5
<form action="admin.php" method="GET">
<input type="text" name="id"><br>
<input type="text" name="aksi><br>
<input type="submit" value="kirim">
</form>
ketika menggunakan method post, maka pada URL bar browser anda akan menjadi
admin.php?id=xxx&aksi=xxx
catatan: xxx adalah data yang dikirimkan
untuk menangkap variabel di program PHP, untuk metode GET ini kita menggunakan $_GET['nama_variabelnya']
oke ke admin.php
?
1
2
3
$id=$_GET['id'];
$aksi= $_GET['aksi'];
echo "id=".$id."<br>Aksi=".$aksi;
pada metode get ini, ketika anda mengubah data di URI, maka hasilnya pun akan berubah mengikuti data yang ada di URI itu.
?
1
2
3
4
5
<form action="admin.php" method="POST">
<input type="text" name="id"><br>
<input type="text" name="aksi><br>
<input type="submit" value="kirim">
</form>
untuk menangkap variabel di program PHP, untuk metode POST ini kita menggunakan $_POST['nama_variabelnya']
oke ke admin.php
<pre>
$id=$_POST['id'];
$aksi= $_POST['aksi'];
echo “id=”.$id.”<br>Aksi=”.$aksi;
</pre>
note: penggunaan metode post atau get itu sesuai dengan kebutuhan anda, biasanya untuk metode get, data yang dikirimkan berupa data aksi/id saja dan tidak bersifat credential.
untuk metode POST, biasanya data yang dikirimkan adalah data yang bersifat credential, misalnya password (hal ini juga terkait dengan keamanan)