Penanganan Form di PHP

Tutorial Belajar PHP Part 27 – Penanganan Form di PHP

Selamat datang di warung belajar, melanjutkan pembahasan seri tutorial PHP, dalam tutorial kali ini kita akan membahas mengenai penanganan form di PHP, seperti bagaimana cara php menangkap inputan form, serta bagaimana php menampilkan inputan form.

Pada masa sekarang hampir semua web memiliki form, seperti form login, form pendaftaran, ataupun form transaksi, karena itu peran form pada sebuah web sangatlah penting.

Untuk membuat form anda dapat membuatnya menggunakan HTML, CSS, serta sentuhan Javascript jika memang dibutuhkan, tapi di tutorial ini kita tidak membahas bagaimana pembuatan form dengan HTML, CSS, dan Javascript.

Kita akan lebih membahas mengenai bagaimana PHP menangani inputan dari form, contohnya seperti bagaimana cara menangkap inputan form, serta menampilkan inputan form, jika anda ingin belajar mengenai bagaimana membuat form bisa melihat tutorial kami sebelumnya cara membuat form di html

Mengenal Struktur Dasar Form HTML

Sebelum kita membahas mengenai bagaimana cara php menangkap inputan pada form, kita akan belajar terlebih dahulu struktur dasar form di HTML, ada beberapa attribute yang perlu anda pahami fungsi, attribute tersebut antara lain :

  • Attribute action
  • Attribute method

Perhatikan skrip dibawah ini :

Keterangan :

  • Perhatikan pada line 1 terdapat attribute action dengan value proses.php yang artinya ketika nanti tombol submit di form diklik, maka akan memanggil file dengan nama proses.php untuk memproses inputan form, jadi kita perlu membuat file dengan nama proses.php untuk memproses inputan dari form.
  • Berikutnya perhatikan value dari attribute action, valuenya adalah proses.php, sehingga file proses.php harus berada satu folder dengan file formnya, anda juga dapat menambahkan nama folder posisi dari file proses.php jika memang anda ingin file proses.php diletakkan di folder yang berbeda dengan file formnya, semisal action=”sistem/proses.php” berarti file proses.php berada didalam folder sistem.
  • Pada line 1 juga terdapat attribute method dengan value get, attribute method ini bisa anda isi dengan menggunakan 2 nilai yaitu post atau get, method ini nanti yang mengatur bagaimana data dikirim dan dapat diterima oleh server.
  • Jika anda menggunakan method get maka inputan form akan dikirim melalui alamat url website, tetapi jika anda menggunakan method post maka inputan form yang dikirimkan tidak terlihat di bagian alamat url website, untuk lebih jelasnya nanti kita akan bahas dibagian contoh.
  • Berikutnya pada line 2 kita menuliskan tag <input type=”text”> dan line 4 kita menuliskan tag <input type=”password”> yang artinya kita membuat inputan untuk text di line 2 dan inputan untuk password di line 4, yang terpenting dibagian inputan ini mereka memiliki attribute name, value dari attribute name ini yang digunakan sebagai penanda masing – masing objek form agar dapat diproses oleh php.
  • Pada line 6 kita menuliskan perintah tag input dengan type=”submit” ini yang akan menjadi tombol, dan ketika tombol tombol ini diklik maka akan mengakses file yang menjadi value dari attribute action yaitu file proses.php untuk memproses data inputannya.

 

 

Perbedaan method get dan post

Berikutnya kita akan membahas mengenai perbedaan dari penggunaan method get dan method post, perbedaan yang paling terlihat dari penggunaan 2 method ini adalah bagaimana cara data dikirimkan agar dapat di proses oleh server.

Pada contoh ini karena nantinya kita menggunakan php untuk menangani prosesnya inputan form, sehingga file formnya kita harus meletakkan di dalam web direktori dalam contoh ini adalah di c:xampp/htdocs, dalam contoh ini kita membuat folder dengan nama belajar_form, sehingga nanti kita memanggilnya dengan alamat http://localhost/belajar_form/form.html, sebagai contoh perhatikan skrip dibawah ini :

Menggunakan Method get

Kita membuat file dengan nama form_get.html dan disimpan didalam folder belajar_form didalam folder htdocs, dengan isi skrip sebagai berikut :

kita dapat mengaksesnya dengan alamat http://localhost/belajar_form/form_get.html tampilannya seperti berikut ini :

contoh form get php

Jika tombol Login di klik maka akan memanggil file dengan nama proses.php, serta nilai inputan formnya akan akan ditampilkan di bagian url websitenya.

contoh form get php

Keterangan :

  • Perhatikan untuk alamat urlnya tertulis proses.php?username=admin&password=12345678, arti dari tulisan username dan password adalah value dari attribute name dimasing – masing inputan. Lalu tulisan admin dan 12345678 adalah value yang diinputkan dibagian form.
  • Jadi kalau kita artikan karakter diatas mengirimkan 2 data, yang pertama data username dengan value admin, dan data password dengan value 12345678
  • Pada gambar diatas terdapat tulisan not found dikarenakan untuk file proses.php memang belum dibuat jadi keterangannya file proses.php tidak ditemukan.

 

Menggunakan post

Berikutnya kita membuat file dengan nama form_post.html didalam folder belajar_form didalam folder htdocs

anda dapat mengaksesnya dengan menggunakan alamat http://localhost/belajar_form/form_post.html jika dibuka tampilannya seperti gambar dibawah ini :

tetapi ketika di klik tombol login, maka tampilannya adalah seperti berikut ini :

Keterangan :

form akan mengakses file dengan nama proses.php, tetapi di url website tidak terlihat nilai yang dikirimkan, hal ini karena kita menggunakan post sehingga data yang dikirimkan tidak terlihat di bagian url dari website

 

 

Menampilkan nilai hasil inputan form dengan PHP

Setelah anda mengetahui perbedaan dari method get dan post, berikutnya kita akan belajar untuk menampilkan data yang diinputkan di bagian form.

Menggunakan Method get

Jika form menggunakan method get, maka buatlah file proses.php dengan isi skrip seperti dibawah ini :

maka jika anda mengisi form dengan method get yang telah kita buat tadi, dengan nama form_get.html, lalu mengisikan usernamenya admin, dan passwordnya 12345678 dibagian form lalu klik tombol submit, maka yang tampil adalah sebagai berikut :

menampilkan inputan form get pada php

Keterangan :

  • Jadi jika pada bagian form menggunakan method get, maka jika anda ingin menangkap dan menampilkan inputan form, gunakan perintah $_GET[‘nama_inputan’],
  • Perhatikan line 2 kita menuliskan $_GET[‘username’] untuk menangkap inputan form dengan name=’username’ karena pada bagian form kita membuat inputan username dengan skrip <input type=”text” name=”username”/> sehingga menangkap inputannya menggunakan perintah $_GET[‘username’],
  • Perhatikan line 4 kita menuliskan $_GET[‘password’] untuk menangkap inputan form dengan name=’password’ karena inputan password kita menuliskannya dengan skrip <input type=”password” name=”password”/>

 

Menggunakan method post

Jika anda menggunakan method post, buatlah file proses.php dengan skrip dibawah ini :

maka jika anda mengisi form dengan method post yang telah kita buat tadi, dengan nama form_post.html, lalu mengisikan usernamenya admin, dan passwordnya 12345678 dibagian form lalu klik tombol submit, maka yang tampil adalah sebagai berikut :

menampilkan inputan form post pada php

Keterangan :

  • Jadi jika pada bagian form menggunakan method post, maka jika anda ingin menangkap dan menampilkan inputan form, gunakan perintah $_POST[‘nama_inputan’]
  • Perhatikan line 2 kita menuliskan $_POST[‘username’] untuk menangkap inputan form dengan name=’username’ karena pada bagian form kita membuat inputan username dengan skrip <input type=”text” name=”username”/> sehingga menangkap inputannya menggunakan perintah $_POST[‘username’],
  • Perhatikan line 4 kita menuliskan $_POST[‘password’] untuk menangkap inputan form dengan name=’password’ karena inputan password kita menuliskannya dengan skrip <input type=”password” name=”password”/>

Jadi yang menjadi perbedaan antara method get dan post saat kita ingin menampilkan data inputan form adalah :

  • Jika menggunakan method get pada bagian form, gunakan perintah $_GET[‘nama_inputan’]
  • Jika menggunakan method post pada bagian form, gunakan perintah $_POST[‘nama_inputan’]

 

 

 

Kapan kita menggunakan method get dan post

Anda harus memahami kapan menggunakan method get dan kapan menggunakan method post, baik kita akan pelajari mengenal kapan kita perlu menggunakan method get dan post.

Kapan menggunakan method get

Method get digunakan ketika anda mengirimkan data dari form yang sifatnya sensitif, karena inputan form akan ditampilkan dibagian url dari website, anda tidak disarankan menggunakan method get ketika membuat form yang datanya rahasia seperti form login, form register, dan form transaksi.

Method get biasanya digunakan untuk form pencarian, dimana yang tampil adalah data kata kunci dari pencarian, contohnya di web site warungbelajar.com ada form pencarian yang berada di sebelah kanan atas, anda semisal mencari artikel dengan keyword html, lalu menekan cari, maka akan mengakses url seperti berikut ini : http://www.warungbelajar.com/?s=html&submit=Search

perhatikan url tersebut, terdapat 2 data dengan method get yang dikirim yaitu :

  • variabel s dengan value html yang merupakan keyword yang kita cari
  • variabel submit dengan value Search merupakan nama tombol yang kita klik saat melakukan pencarian.

Kenapa tidak disarankan untuk inputan data yang bersifat sensitif, karena method get ini mengirimkan data melalui url website, berikutnya php juga membatasi karakter yang dapat dikirim melalui url website ini hanya 1024 karakter saja.

Kapan menggunakan method post

Anda dapat menggunakan method post ketika data yang diinputkan form bersifat sensitif, seperti form login, register, ataupun form transaksi, hal tersebut dikarenakan method post tidak menampilkan inputan form, dibagian url dari web.

Jika anda membuat form yang didalamnya terdapat inputan untuk upload file (<input type=”file”/>), anda harus menggunakan method post, jadi intinya jika data yang diinputkan di form akan disimpan di database ada baiknya menggunakan method post, tetapi jika datanya memang sengaja ingin ditampilkan ke pengguna aplikasi gunakan method get.

 

 

Mengenal variabel $_REQUEST untuk menangkap inputan form

Pada tutorial diatas kita sudah membahas mengenai 2 jenis variabel yaitu $_GET dan $_POST, dan sudah dijelaskan di tutorial sebelumnya bahwa :

  • jika menggunakan method=”get” pada bagian form gunakan variabel $_GET untuk menangkap inputan form
  • jika menggunakan method=”post” pada bagian form gunakan variabel $_POST untuk menangkap inputan form

 

Lalu pertanyaannya jika kita tidak tahu formnya menggunakan method apa, bagaimana cara anda untuk menangkap inputan form tersebut ?

Anda dapat menggunakan variabel $_REQUEST sebagai alternatif, perhatikan contoh skrip dibawah ini :

  • kita membuat file dengan nama form.html didalam folder belajar_form, dan kita buat skrip seperti berikut ini :
  • Berikutnya silahkan membuat file proses_form.php untuk memproses inputan form :

maka hasilnya jika kita akses http://localhost/belajar_form/form.html

contoh request form html

kita coba mengisi inputan username dan password, lalu saya klik login, maka akan mengakses file proses_form.php

menangkap inputan form dengan request

maka inputan dari form akan ditampilkan, karena pada file proses_form.php kita menggunakan variabel $_REQUEST, jadi bisa kita simpulkan meskipun kita menggunakan method post ataupun method get, anda dapat menggunakan variabel $_REQUEST untuk menampilkan inputan formnya.

Baik sekian dulu tutorial kali ini, kita sudah membahas mengenai bagaimana cara penanganan form di php, jika ada yang ingin didiskusikan silahkan di kolom komentar, sekian dulu sampai jumpa di tutorial selanjutnya.

Leave a Reply

Your email address will not be published. Required fields are marked *