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 :
1 2 3 4 5 6 7 |
<form action="proses.php" method="get"> Username : <input type="text" name="username" /> <br /> Password : <input type="password" name="password" /> <br /> <input type="submit" value="Login" > </form> |
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 :
1 2 3 4 5 6 7 |
<form action="proses.php" method="get"> Username : <input type="text" name="username" /> <br /> Password : <input type="password" name="password" /> <br /> <input type="submit" value="Login" > </form> |
kita dapat mengaksesnya dengan alamat http://localhost/belajar_form/form_get.html tampilannya seperti berikut ini :
Jika tombol Login di klik maka akan memanggil file dengan nama proses.php, serta nilai inputan formnya akan akan ditampilkan di bagian url websitenya.
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
1 2 3 4 5 6 7 |
<form action="proses.php" method="post"> Username : <input type="text" name="username" /> <br /> Password : <input type="password" name="password" /> <br /> <input type="submit" value="Login" > </form> |
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 :
1 2 3 4 5 |
<?php echo "Username = ".$_GET['username']; echo "<br/>"; echo "Password = ".$_GET['password']; ?> |
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 :
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 :
1 2 3 4 5 |
<?php echo "Username = ".$_POST['username']; echo "<br/>"; echo "Password = ".$_POST['password']; ?> |
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 :
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 : https://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 :
1 2 3 4 5 6 7 |
<form action="proses_form.php" method="get"> Username : <input type="text" name="username" /> <br /> Password : <input type="password" name="password" /> <br /> <input type="submit" value="Login" > </form> |
- Berikutnya silahkan membuat file proses_form.php untuk memproses inputan form :
1 2 3 4 5 |
<?php echo "Username = ".$_REQUEST['username']; echo "<br/>"; echo "Password = ".$_REQUEST['password']; ?> |
maka hasilnya jika kita akses http://localhost/belajar_form/form.html
kita coba mengisi inputan username dan password, lalu saya klik login, maka akan mengakses file proses_form.php
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.
ANDA INGIN SERIUS BELAJAR PEMROGRAMAN PHP ?
Seperti yang anda ketahui bahwa saat ini skill di bidang pemrograman sangatlah dibutuhkan, salah satunya adalah pemograman PHP.
Untuk anda yang ingin serius belajar pemrograman PHP, Warung Belajar Memiliki Beberapa Paket Tutorial yang bisa membantu anda dalam belajar Pemrograman PHP, dari mulai step – step dasar hingga mampu membuat aplikasi berbasis web dengan menggunakan PHP.
Paket Tutorial ini berisi video tutorial belajar pemrograman berbahasa indonesia, cocok sekali untuk anda yang sedang belajar pemrograman PHP, bahkan untuk orang awam sekalipun.
Paket Tutorial ini juga dilengkapi dengan study kasus yang akan mempermudah pemahaman anda dalam belajar pemrograman, Mari berinvestasi untuk menambah skill dalam menguasai Pemrograman PHP
-
Tutorial Seminggu Menguasai PHP Dan MySQL
Rp80,000 Add to cart -
Tutorial HTML White Box – Panduan Belajar HTML Lengkap
Rp70,000 Add to cart -
Tutorial Web Programming Black Box – Tutorial Belajar HTML, CSS, Bootstrap 4, PHP OOP, dan MySQL – Study Kasus Membuat Aplikasi Sistem Management Stok Barang
Rp120,000 Add to cart -
Tutorial Membuat Aplikasi Dengan Codeigniter, Javascript Dan Ajax Jquery
Rp95,000 Add to cart -
Tutorial Membangun Layanan SMS Gateway Berbasis Client Server
Rp145,000 Add to cart -
Tutorial Membuat Aplikasi Dinamis Dengan HTML CSS Boostrap PHP Dan MySQL
Rp120,000 Add to cart -
TUTORIAL MEMBANGUN APLIKASI BERBASIS WEB DENGAN PHP MYSQL DAN BOOTSTRAP
Rp95,000 Add to cart -
Tutorial Tips Dan Trik Aplikatif Master PHP
Rp85,000 Add to cart
makasih mas
Artikel ini sangat membantu saya tuk lebih memahami ilmu tentang php.
Terima kasih.