Berlatih Membuat Program PHP bagian 5 - Form dan Input

Formulir dan Masukan (Input)

Sebuah program tentu ada yang kurang apabila tidak dapat berinteraksi dengan pengguna. Salah satu cara untuk berinteraksi adalah melalui input jadi program bukan hanya menghasilkan output saja. Sebelum input diproses, input ditampung terlebih dahulu di suatu formulir. Kemudian setelah data yang diperlukan diisikan, formulir dapat mengirim data (submit) yang sudah diinput ke pemrosesbisa melakukan dengan dua macam cara (metode). 

Metode yang bisa digunakan antara lain yaitu POST dan satu lagi GET. Metode ini akan menghasilkan variabel superglobal masing-masing $_POST dan $_GET. Tidak dapat saling tertukar.

Contoh 1:

file formulir_get.php dengan kode program berikut:

<html>
<body>
<h1>Formulir GET</h1>
<form action="pemroses_get.php" method="get">
Nama: <input type="text" name="nama"><br>
E-mail: <input type="text" name="email"><br>
<input type="submit" value ="Proses">
</form>
</body>
</html>
Berlatih Membuat Program PHP bagian 5

File pemroses_get.php

<html>
<body>
Hai <?php echo $_GET["name"]; ?><br>
Email anda : <?php echo $_GET["email"]; ?>
</body>
</html>


Contoh 2:

file formulir_post.php dengan kode program berikut:

<html>
<body>
<h1>Formulir POST</h1>
<form action="pemroses_post.php" method="post">
Nama: <input type="text" name="nama"><br>
E-mail: <input type="text" name="email"><br>
<input type="submit" value ="Proses">
</form>
</body>
</html>

File pemroses_post.php

<html>
<body>
Hai <?php echo $_POST["name"]; ?><br>
Email anda : <?php echo $_POST["email"]; ?>
</body>
</html>

GET vs POST

Meskipun sama-sama dapat dimanfaatkan untuk mengirim data (metode) dan menampung data (variabel), Tetapi get dan post adalah hal yang berbeda. Masing-masing memiliki kelebihan dan kelemahan. 

Karakteristik GET

GET mengirim data melalui URL sehingga data bisa terlihat dari address bar browser dalam jumlah terbatas. Karena data bisa terlihat maka cara ini sering dianggap kurang aman untuk mengirim data sensitif seperti pasword ataupun hak akses. Jumlah pengiriman data melalui GET yang dibatasi hanya sampai 2000 karakter ini agar proses dapat berlangsung dengan cepat.

Karakteristik POST

POST mengirim data tanpa terlihat melalui url sehingga dianggap lebih aman untuk mengirim data sensitif. Selain itu pengiriman data melalui metode POST tidak dibatasi dengan jumlah karakter sehingga selain mampu mengirim data berukuran besar bisa juga dimanfaatkan mengirim file.

Variabel Global REQUEST

Seperti yang sudah disinggung pada keterangan diatas. Pada dasarnya metode pengiriman get data dikirim dalam variabel global $_GET berupa array. Begitu pula dengan post pengiriman data dikirim dalam variabel global $_POST berupa array. Masing-masing cara diatas tidak dapat saling tertukar. Namun ada variabel global khusus yang bisa mengakses kedua jenis metode tersebut yaitu REQUEST. 

Contoh 3:

Form bisa menggunakan metode get atau post seperti contoh diatas, tetapi variabel bisa diakses melalui request:

file formulir_post.php dengan kode program berikut:

<html>
<body>
<h1>Formulir POST</h1>
<form action="pemroses_request.php" method="post">
Nama: <input type="text" name="nama"><br>
E-mail: <input type="text" name="email"><br>
<input type="submit" value ="Proses">
</form>
</body>
</html>

File pemroses_request.php

<html>
<body>
Hai <?php echo $_REQUEST["name"]; ?><br>
Email anda : <?php echo $_REQUEST["email"]; ?>
</body>
</html>

Selamat belajar, Semoga bermanfaat.

Posting Komentar