- $_POST : untuk model pengiriman POST
- $_GET : untuk model pengiriman GET
untuk lebih jelasnya kita bandingkan contoh script dibawah ini :
$_GET
login.php
<html>
<head>
</head>
<body>
<form action="welcome.php" method="get">
Nama : <input type="textfield" name="nama"><br/>
Password : <input type="password" name="pwd"><br/>
<input type="submit" value="Send" name="send">
</form>
</body>
</html>
Bila user mengklik tombol "Submit", URL yang dikirim bisa terlihat seperti ini:
http://localhost/form01.php?nama=diaz&pwd=diaz&send=Send
dengan metode GET, pada bagian address akan terlihat isi dari inputan kita, sehingga sangat tidak disarankan bila form tersebut berisi inputan untuk Password.
welcome.php
<html>
<head>
</head>
<body>
<?php
$nama = $_GET['nama'];
$pwd = $_GET['pwd'];
echo "Hello <i>$nama</i><br/>";
echo "Password kamu <i>$pwd</i>";
?>
</body>
</html>
Mengapa menggunakan $_GET?
- Bila menggunakan variabel $_GET semua nama variabel dan nilai-nilai ditampilkan di URL. Jadi metode ini tidak boleh digunakan saat mengirimkan password atau informasi sensitif lainnya! Namun, karena variabel ditampilkan di URL, mungkin untuk dibookmark. Hal ini dapat berguna dalam beberapa kasus.
- Metode HTTP GET yang tidak sesuai terhadap besar nilai variabel; nilainya tidak dapat melebihi 100 karakter.
$_POST
login.php
<html>
<head>
</head>
<body>
<form action="welcome.php" method="post">
Nama : <input type="textfield" name="nama"><br/>
Password : <input type="password" name="pwd"><br/>
<input type="submit" value="Send" name="send">
</form>
</body>
</html>
Bila user mengklik tombol "Submit", URL tidak akan berisi form data apapun, dan akan terlihat seperti ini:
http://localhost/welcome.php
dapat terlihat jelas bedanya, sehingga pada form untuk pengisian password harus menggunakan metode POST.
welcome.php
<html>
<head>
</head>
<body>
<?php
$nama = $_POST['nama'];
$pwd = $_POST['pwd'];
echo "Hello <i>$nama</i><br/>";
echo "Password kamu <i>$pwd";
?>
</body>
</html>
Mengapa menggunakan $_POST?
- Variabel dikirim dengan HTTP POST tidak akan ditampilkan pada URL
- Variabel tidak memiliki batas panjang
Namun, karena variabel-variabel yang tidak ditampilkan pada URL, tidak mungkin untuk bookmark.
$_REQUEST
Sebagai tambahan, $_REQUEST dapat digunakan untuk model pengiriman $_GET ataupun $_POST.
welcome.php
<html>
<head>
</head>
<body>
<?php
$nama = $_REQUEST['nama'];
$pwd = $_REQUEST['pwd'];
echo "Hello <i>$nama</i><br/>";
echo "Password kamu <i>$pwd";
?>
</body>
</html>
welcome.php
Kutipan : http://www.duniaenjoy.blogspot.com/