Belajar HTML Dasar Part 14 : Cara Membuat Form di HTML (tag form)

Form biasanya digunakan untuk mengumpulkan data dari pengunjung web kita. Mulai dari form untuk login, form kontak, form untuk pendaftaran user, bahkan untuk mengirimkan data antar halaman web. Pada tutorial belajar HTML: cara membuat form di HTML ini kita akan membahas cara penggunakan tag form di dalam HTML.


Penggunaan form hanya menggunakan HTML saja tidak akan terlalu berguna. Form biasanya hanya berupa interface yang disediakan untuk mengumpulkan data dari user, dan akan diproses dengan bahasa pemograman web seperti JavaScript atau PHP, dan disimpan di dalam tabel MySQL. Untuk pembahasan lebih lanjut, saya akan menjelaskannya pada tutorial tentang PHP dan JavaScript.

Tag dasar yang akan kita gunakan untuk membuat form di HTML adalah tag form, input, textarea, select dan option.


Pengertian tag <form>

Sebuah form dalam HTML harus berada di dalam tag form, yang diawali dengan <form> dan diakhiri dengan </form>. Tag form akan membutuhkan beberapa atribut untuk dapat berfungsi dengan seharusnya.

Atribut pertama adalah action, yang berfungsi untuk menjelaskan kemana data form akan dikirimkan. Biasanya nilai dari atribut action ini adalah alamat dari sebuah halaman PHP yang digunakan untuk memproses isi data form.

Atribut kedua adalah method, yang berfungsi untuk menjelaskan bagaimana data isian form akan dikirim oleh web browser. Nilai dari atribut method ini bisa berupa get atau post.

Perbedaan method get dan method post adalah, jika kita mengisi atribut method dengan get (dimana ini adalah nilai default seandainya atribut method tidak ditulis) maka isian form akan terlihat pada url browser. Method get ini biasanya digunakan untuk query pencarian. Method post biasanya digunakan untuk data yang lebih sensitif seperti yang berisi password, atau registrasi user. Data hasil form tidak akan terlihat pada browser.

Struktur dasar form akan terlihat sebagai berikut:

<form action="prosesdata.php" method="post">
   ...isi form...
</form>

Mengenal tag <input>

Tag input merupakan tag paling banyak digunakan di dalam form dan memiliki banyak bentuk, mulai dari isian text biasa, text password, checkbox, radio, sampai dengan tombol submit, semuanya dalam bentuk tag <input>.

Bentuk-bentuk dari keluarga tag input ini dibedakan berdasarkan atribut type:

  • <input type="text" /> atau bisa juga <input /> adalah textbox inputan biasa yang menerima input berupa text, contohnya digunakan untuk inputan nama, username, dan inputan yang berupa text pendek. Input type text ini juga bisa memiliki atribut value yang bisa diisi nilai tampilan awal dari text
  • <input type="password" /> dalam tampilannya sama dengan type text, namun teks yang diinput tidak akan terlihat, akan berupa bintang atau bulatan. Biasanya hanya digunakan untuk inputan yang sensitif seperti password.
  • <input type="checkbox" /> adalah inputan berupa checkbox yang dapat diceklist atau di centang oleh user. User dapat memilih atau tidak memilih checkbox ini. Type checkbox memiliki atribut checked yang jika ditulis atau diisi dengan nilai checked, akan membuat chexkbox langsung terpilih pada saat pertama kali halaman ditampilkan. Contoh inputan checkbox berupa hobi, yang oleh user dapat dipilih beberapa hobi.
  • <input type="radio" /> mirip dengan checkbox, namun user hanya bisa memilih satu diantara pilihan group radio. Type radio ini berada dalam suatu grup dan user hanya bisa memilih salah satunya. Contoh inputan type radio adalah jenis kelamin.
  • <input type="submit" /> akan menampilkan tombol untuk memproses form. Biasanya diletakkan pada baris terakhir dari form. Atribut value jika diisi akan membuat text tombol submit berubah sesuai inputan nilai value.
Perhatikan juga bahwa seperti tag <img> dan <br>, tag <input> juga merupakan tag yang berdiri sendiri dan tidak membutuhkan penutup tag.

Mengenal tag <textarea>

Tag textarea pada dasarnya sama dengan input type text, namun lebih besar dan dapat berisi banyak baris. Panjang dan banyak baris untuk text area di atur melalui atribut rows dan cols, atau melalui CSS.

Contoh penggunaan textarea adalah sebagai berikut:

<textarea rows="5" cols="20">
    Text yang diisi dapat mencapai banyak baris
</textarea>

Elemen yang berada diantara tag textarea akan ditampilkan sebagai text awal dari form.


Mengenal tag <select>

Tag select digunakan untuk inputan yang telah tersedia nilainya, dan user hanya dapat memilih dari nilai yang ada. Tag select digunakan bersama-sama dengan tag option untuk membuat box pilihan.

Contoh penggunaan tag select adalah sebagai berikut:

<select>
    <option>Pilihan 1</option>
    <option>Pilihan 2</option>
    <option value="pilihan ketiga">Pilihan 3</option>
</select>

Ketika form dikirim untuk diproses, nilai dari tag <option> akan dikirimkan. Nilai ini adalah berupa text diantara tag option, kecuali jika kita memberikan atribut value. Jika atribut value berisi nilai, maka nilai value-lah yang akan dikirim. Ada atau tidaknya atribut value ini tidak akan tampak dalam tampilan form.

Tag select memiliki atribut selected yang dapat ditambahkan agar tag select berisi nilai awal. Contoh penggunaanya adalah sebagai berikut:

<select>
    <option>Pilihan 1</option>
    <option>Pilihan 2</option>
    <option value="pilihan ketiga" selected>Pilihan 3</option>
</select>

Mengenal Atribut: Name

Setiap tag inputan di dalam form harus ditambahkan atribut name agar dapat diproses oleh web server nantinya. Di dalam halaman proses (yang biasanya berupa bahasa PHP atau ASP), nilai dari atribut name inilah yang akan menjadi variabel form. Contoh pemakaiannya adalah sebagai berikut:

<input type="text" name="username">
<input type="text" name="email">

Kedua input diatas akan tampak sama persis, namun pada saat pemrosesan data, masing-masing akan dibedakan menurut atribut name.


Akhirnya, Sebuah Form Utuh

Merangkum seluruh tag form HTML yang telah kita bahas diatas, maka saatnya untuk membuat sebuah form HTML. Silahkan buka text editor, dan tuliskan kode HTML berikut, lalu save sebagai formulir.html

Contoh penggunaan tag form:

<!DOCTYPE html>
<html>
<head>
   <title>Belajar Membuat Form </title>
</head>
<body>
<form action=" formulir.html" method="get">

Nama: <input type="text" name="nama" value="Nama Kamu" />
<br />

Password: <input type="password" name="password" />
<br />

Jenis Kelamin : 
<input type="radio" name="jenis_kelamin" value="laki-laki" checked /> 
Laki - Laki
<input type="radio" name="jenis_kelamin" value="perempuan" /> 
Perempuan
<br />

Hobi: <input type="checkbox" name="hobi_baca" /> Membaca Buku
      <input type="checkbox" name="hobi_nulis" checked /> Menulis
      <input type="checkbox" name="hobi_mancing" /> Memancing
<br />

Asal Kota:
 <select name="asal_kota" >
     <option value="Kota Jakarta"> Jakarta</option>
     <option value="Kota Bandung">Bandung</option>
     <option value="Kota Semarang" selected>Semarang</option>
 </select>
<br />

Komentar Anda:
<textarea name="komentar" rows="5" cols="20">
Silahkan katakan isi hati anda
</textarea>
<br />

<input type="submit" value="Mulai Proses!" >

</form>
</body>
</html>

Cara Membuat Form di HTML (tag form)

Terlepas dari tampilan yang kurang rapi, kita telah membuat sebuah form utuh (tampilan form dapat diubah dengan mudah menggunakan CSS). Perhatikan bahwa untuk atribut target saya mengisinya dengan: formulir.html dan atribut method dengan nilai get, sehingga pada saat anda klik kombol mulai proses, perhatikan perubahan pada alamat address bar browser, akan tampil tambahan seperti berikut:

file:///D:/BelajarHTML/formulir.html?nama=Andi&password=rahasia
&jenis_kelamin=laki-laki&hobi_nulis=on&asal_kota=Bandung
&komentar=Sudah+mahir+html

Jika diperhatikan dengan lebih lanjut, semua isian form tampak terlihat dari baris ini (karena method form kita set menjadi get) setiap nilai dibatasi dengan karakter dan (&) sedangkan spasi di ubah menjadi karakter tambah (+)

Pembuatan form tampak sedikit rumit, namun ini sepadan dengan kemampuannya untuk menampung data yang berharga dari user kita. Dalam tutorial lainnya kita akan membahas tentang cara memproses inputan form ini dengan bahasa pemograman PHP.

Jika anda ingin mempelajari lebih dalam tentang cara penulisan form HTML beserta tag dan atribut untuk pembuatan form HTML, duniailkom telah membuat tutorial khusus untuk Form HTML: Tutorial Form HTML lanjutan. Untuk pemrosesan Form menggunakan PHP, bisa dipelajari di dalam Tutorial PHP: Cara Membuat dan Memproses Form HTML dengan PHP

Sampai dengan tutorial belajar HTML dasar yang ke-14 ini, kita telah membahas hampir seluruh tag-tag umum yang digunakan untuk membuat halaman web. Sebagai tutorial terakhir untuk merangkum apa yang telah kita bahas hingga tutorial ini, silahkan lanjut ke Tutorial HTML Dasar (Finish).


eBook HTML Uncover Duniailkom
Anda serius ingin menguasai HTML? Duniailkom telah menyusun eBook HTML Uncover. eBook ini membahas HTML dengan lebih detail dan lebih lengkap hingga fitur terbaru HTML5. Penjelasan lebih lanjut bisa ke: eBook HTML Uncover Duniailkom.

259 Comments

  1. Reza
    12 Aug 13
    • Andre
      07 Oct 13
  2. Muhamad Wildan Soul
    15 Dec 13
    • Andre
      17 Dec 13
  3. felixdjupha
    09 Jan 14
    • Andre
      10 Jan 14
  4. faizal
    13 Jan 14
    • Andre
      14 Jan 14
  5. Cahjani Wang
    09 Feb 14
    • Andre
      22 Feb 14
  6. UDINNNNNN
    13 Feb 14
    • Andre
      22 Feb 14
  7. orchid sile
    05 Mar 14
    • Andre
      09 Mar 14
  8. arnowoaji
    10 May 14
    • Andre
      10 May 14
  9. Willy
    24 Jun 14
  10. Alexa Godlieb
    05 Aug 14
    • Andre
      15 Aug 14
  11. mq
    18 Aug 14
    • Andre
      30 Aug 14
  12. uwii
    02 Sep 14
    • Andre
      05 Sep 14
  13. dira89
    27 Oct 14
    • Andre
      31 Oct 14
  14. anwar tsani
    27 Oct 14
    • Andre
      31 Oct 14
  15. Pen Quran
    05 Dec 14
  16. Rangga Saputra
    09 Dec 14
    • Andre
      09 Dec 14
  17. abdul kholik
    11 Dec 14
    • Andre
      11 Dec 14
  18. hasbi
    30 Dec 14
    • Andre
      30 Dec 14
  19. harlin
    06 Feb 15
    • Andre
      06 Feb 15
      • harlin
        07 Feb 15
    • Andre
      11 Feb 15
  20. Takde Nama
    18 Mar 15
    • Andre
      19 Mar 15
  21. yana
    22 Mar 15
  22. yana
    22 Mar 15
    • Andre
      23 Mar 15
      • Robby
        29 Feb 16
  23. Hasbi
    23 Mar 15
    • Andre
      25 Mar 15
  24. Kahfi Budiana Putra
    16 Apr 15
  25. Kahfi Budiana Putra
    16 Apr 15
    • Andre
      16 Apr 15
  26. Kahfi Budiana Putra
    16 Apr 15
    • Andre
      20 Apr 15
  27. Laguon
    21 Apr 15
  28. budi aman prasetyo
    23 Apr 15
  29. Zibu
    25 May 15
    • Andre
      26 May 15
  30. widdy
    29 May 15
    • Andre
      30 May 15
  31. Saiful
    02 Jul 15
    • Saiful
      02 Jul 15
      • Saiful
        02 Jul 15
      • Andre
        06 Jul 15
  32. rifqy
    04 Jul 15
    • Andre
      06 Jul 15
  33. marco
    05 Aug 15
    • Andre
      11 Aug 15
  34. graziani
    11 Aug 15
    • Andre
      11 Aug 15
  35. Dodi
    19 Aug 15
    • Andre
      20 Aug 15
  36. Asep aka
    23 Aug 15
    • Andre
      25 Aug 15
  37. Anggun
    10 Sep 15
  38. Kursi Tamu Kayu
    04 Oct 15
    • Andre
      04 Oct 15
  39. elmahbun
    19 Oct 15
    • Andre
      19 Oct 15
  40. adnan
    26 Oct 15
    • Andre
      27 Oct 15
  41. fandi
    02 Nov 15
  42. yarman halawa
    11 Nov 15
    • Andre
      12 Nov 15
  43. Mika
    13 Nov 15
    • Andre
      15 Nov 15
  44. William
    19 Nov 15
    • Andre
      20 Nov 15
  45. FAIRUZ
    20 Nov 15
    • Andre
      21 Nov 15
  46. Donquixote
    21 Nov 15
  47. Agus
    25 Nov 15
  48. ambar
    27 Nov 15
  49. akbar
    21 Dec 15
  50. saddam
    22 Jan 16
    • Andre
      23 Jan 16
  51. William
    29 Jan 16
    • Andre
      29 Jan 16
      • William
        29 Jan 16
        • Andre
          29 Jan 16
  52. Anonymous
    22 Feb 16
    • Andre
      22 Feb 16
      • Anonymous
        23 Feb 16
  53. fikiefendi
    27 Feb 16
    • Andre
      01 Mar 16
  54. Gin
    02 Mar 16
    • Andre
      02 Mar 16
  55. Ricky
    13 Apr 16
  56. Beni Novianto
    30 Apr 16
  57. bobi tetsuya
    04 Jun 16
  58. Sitepu
    06 Jul 16
  59. Anonymous
    22 Jul 16
    • Andre
      24 Jul 16
  60. Saskara
    20 Aug 16
    • Andre
      21 Aug 16
  61. Saskara
    21 Aug 16
  62. Candra Nusantara
    23 Aug 16
    • Andre
      24 Aug 16
  63. nuthfatin
    24 Aug 16
    • Andre
      24 Aug 16
  64. nuthfatin
    24 Aug 16
  65. alisman
    27 Aug 16
    • Andre
      30 Aug 16
  66. Anonymous
    27 Aug 16
  67. nuthfatin
    30 Aug 16
    • Andre
      30 Aug 16
  68. nuthfatin
    04 Sep 16
  69. Revian
    12 Sep 16
    • Andre
      13 Sep 16

Add Comment

Leave a Reply to Reza Cancel reply