Langsung ke konten utama

Perbedaan Metode POST dan GET 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
POSTGET
Nilai variabel tidak ditampilkan di URLNilai variabel ditampilkan di URL sehingga user dapat dengan mudah memasukkan nilai variabel baru
Lebih amanKurang aman
Tidak dibatasi panjang stringDibatasi panjang string sampai 2047 karakter
Pengambilan variabel dengan $_POSTPengambilan variabel dengan $_GET
Biasanya untuk input data melalui formBiasanya untuk input data melalui link
Digunakan untuk mengirim data-data penting seperti passwordDigunakan untuk mengirim data-data tidak penting
Untuk form login tentunya kita gunakan POST agar variabel username dan password tidak ditampilkan di URL.

Komentar

Postingan populer dari blog ini

Use X++ wildcard (LIKE and NOT LIKE) in X++ select statement

For x++ select statements:  select firstOnly batchHistory      where batchHistory.Caption  LIKE  "*Test*"  For x++ queries:  queryBuildRange.value(*Test*); Note the LIKE instead of a '==' and the wildcards inside of the quotations. All other combinations of wildcard usage will work here. This is the same functionality as what the users would put in the grid filtering(eg. '*TEST*' in the caption field filter on the batch tasks form).  However, if you want to find all Captions that do not have the word Test in them (NOT LIKE, !LIKE), you will have to modify the above example slightly.  For x++ select statements:  select firstOnly batchHistory      where  !( batchHistory.Caption LIKE "*TEST*" ) ;  For x++ queries:  queryBuildRange.value(!*Test*);

Solved : Update on a valid time state table is not allowed without specifying a ValidTimeStateUpdateMode

How To Solve Error :  Cannot edit a record in Position hierarchies (xyz). Update on a valid time state table is not allowed without specifying a ValidTimeStateUpdateMode. select forUpdate * from xyz where xyz.recid== _RecId ; try { ttsBegin; _Value= “Abcd”; xyz.Name = _Value; xyz.validTimeStateUpdateMode(ValidTimeStateUpdate::Correction); xyz.ValidFrom =today(); xyz.ValidTo=dateMax(); xyz.update(); ttsCommit; } catch { ttsAbort; }

Format Label Tom Jerry (MS Word)

Setelah beberapa lama aku tidak membuat label undangan, tiba-tiba kemarin aku diminta untuk membuat label undangan Wisuda dengan menggunakan label merek Tom & Jerry (TJ). Harusnya sih menjadi tugas sekretaris panitia tapi karena yang bersangkutan ada tugas di luar kantor maka aku yang membereskannya. Mula-mula aku membuat format labelnya dengan cara manual, tapi untung ada pak Mulyadi (staf tata usaha) yang menyarankan aku untuk mengunduh format label yang telah ada di Internet. Mulailah aku browsing di google dan menemukan format label berbagai ukuran dari website Tom & Jerry di alamat berikut  http://tjlabels.com/en/download.html  (yang link ini agak rempong krn pake masukin nomor captcha-captcha-an). Sedangkan kalau yang link ini langsung pilih file ga pake nomor captcha-captcha-an ( http://tjlabels.com/assets/download/ ). Ternyata juga ada banyak berbagai blog yang menyediakan  link download seperti ini, tapi aku mem- posting  artikel ini ...