Catching Fire

Selasa, 01 April 2014

Perbedaan Get Dan Post Pada PHP

POST dan GET memang mempunyai fungsi yang sama yaitu mengirimkan variabel ke halaman lain atau mengirimkannya ke database. Nah, terus apa bedanya nih?
Metode POST
Buat file index.php dan ketikkan code berikut :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<html>
<title> Beda POST dan GET</title>
<body>
Silakan Login dengan Username dan Password Anda
<form action="view.php" method="POST">
    <table>
        <tr>
            <td>Username</td>
            <td><input type="text" name="username"/></td>
        </tr>
        <tr>
            <td>Password</td>
            <td><input type="password" name="password"/></td>
        </tr>
        <tr>
            <td></td>
            <td><input type="submit" value="Login"/></td>
        </tr>
    </table>
</form>
</body>
</html>
Kemudian buat file baru dengan nama view.php dan ketikkan baris berikut
1
2
3
4
5
6
7
<html>
<title> Beda POST dan GET</title>
<body>
Username : <?php echo $_POST["username"]; ?><br/>
Password : <?php echo $_POST["password"]; ?>
</body>
</html>
Hasilnya,
Metode POST
Metode POST

Metode GET
Ubah file index.php yang telah kita buat tadi menjadi seperti ini
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<html>
<title> Beda POST dan GET</title>
<body>
Silakan Login dengan Username dan Password Anda
<form action="view.php" method="GET">
    <table>
        <tr>
            <td>Username</td>
            <td><input type="text" name="username"/></td>
        </tr>
        <tr>
            <td>Password</td>
            <td><input type="password" name="password"/></td>
        </tr>
        <tr>
            <td></td>
            <td><input type="submit" value="Login"/></td>
        </tr>
    </table>
</form>
</body>
</html>
Jadi yang diubah hanya tulisan POST, diganti GET.
Kemudian ganti juga file view.php menjadi
1
2
3
4
5
6
7
<html>
<title> Beda POST dan GET</title>
<body>
Username : <?php echo $_GET["username"]; ?><br/>
Password : <?php echo $_GET["password"]; ?>
</body>
</html>
Disini $_POST kita ubah menjadi $_GET. Hasilnya,
Metode GET
Metode GET

Dari kedua gambar memberikan hasil yang sama, tapi coba liat URLnya, loh kok beda?
Nah perbedaannya
POST GET
Nilai variabel tidak ditampilkan di URL Nilai variabel ditampilkan di URL sehingga user dapat dengan mudah memasukkan nilai variabel baru
Lebih aman Kurang aman
Tidak dibatasi panjang string Dibatasi panjang string sampai 2047 karakter
Pengambilan variabel dengan $_POST Pengambilan variabel dengan $_GET
Biasanya untuk input data melalui form Biasanya untuk input data melalui link
Digunakan untuk mengirim data-data penting seperti password Digunakan untuk mengirim data-data tidak penting
Untuk form login tentunya kita gunakan POST agar variabel username dan password tidak ditampilkan di URL.

Tidak ada komentar:

Posting Komentar