5 May 2013,
 28

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>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 HTMLTutorial 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).

28 responses on “Belajar HTML Dasar Part 14 : Cara Membuat Form di HTML (tag form)

  1. Reza says:

    gan itu klo di klik Proses, jadinya gmn ???

    • Andre says:

      Maksudnya kalau di klik tombol proses y gan? karena halaman ini hanya terdiri dari HTML, maka tombol prosesnya tidak berfungsi apa-apa. Untuk prosesnya, harus menggunakan bahasa pemograman web seperti PHP. Mudah2an g lama lagi saya akan buat artikel PHPnya…

  2. Muhamad Wildan Soul says:

    Ada ketentuan tidak dalam memasukan “name” ?

    • Andre says:

      Tidak ada ketentuan khusus untuk nilai dari “name”, selama nilai tersebut tidak mengandung spasi dan beberapa karakter khusus seperti tanda seru, tanda tanya, dll.

  3. felixdjupha says:

    itu kalo udah buat PHP nya, apakah yang “textarea” bisa muncul di PHP nya ?
    caranya gimana ya ? saya pake textarea ga bisa muncul

    • Andre says:

      Text area seharusnya bisa muncul di PHP. PHP biasanya digunakan untuk memproses isian text area, bukan untuk menampilkannya. Untuk menampilkan tag “text area” akan lebih baik tetap menggunakan kode HTML.

      contohnya:
      <?php
      //kode PHP disini
      ?>
      <textarea name=”komentar” rows=”5″ cols=”20″>
      <?php
      //kode PHP disini
      ?>
      </textarea>

      mudah2an nanti saya akan bahas di bagian tuturial PHP agar lebih “pas” penjelasannya…

  4. faizal says:

    terimakasih gan, sangat membantu dalam pengerjaan tugas…….

  5. Cahjani Wang says:

    kalau mau buat “show password” bagaimana caranya?

    • Andre says:

      Biasanya jika ingin membuat tombol untuk “show password” harus menggunakan javascript, yaitu dengan menukar type tag input. mudah-mudahan nanti saya akan buatkan tutorialnya,,,

  6. UDINNNNNN says:

    mas tanya, itu biar tiap response dari hasil isi form masuk email gimana yak?
    pelisssssss penjelasannya mas >.<

    • Andre says:

      Untuk dapat mengirimkan ke alamat email, pemrosesan di sisi web servernya harus menggunakan PHP dan kemungkinan juga membutuhkan email-server. Saya sendiri belum sempat mencobanya, mungkin pembaca lain bisa membantu.. ^_^

  7. orchid sile says:

    Bagaimana cara agar input form berupa tanggal yang kompatibel dengan semua web browser? type=date hanya kompatibel dengan chrome.

    • Andre says:

      Objek form dengan type=date merupakan salah satu dari objek form dalam HTML5, dan karena HTML5 masih tergolong baru, belum semua web browser mendukungnya. Saat ini memang baru google chrome yang bisa menampilkan objek form HTML5 ini.

      Sebagai alternatif, bisa menggunakan javascript, terutama dengan jquery UI, untuk cara penggunaannya bisa mengunjungi Jquery UI date

  8. arnowoaji says:

    mas suhu bisa tolong bantuin dong, saya coba2 bikin online shop, template gratisan dri maskolis dan domain jg gratisan dari hostinger, itung2 sekalian belajar,,, otak atik sending email malah jadi lari ke url sendiri, sy ganti action ke prosesdata.php jawabannya method not alowed, smpe mumet mentok disini mas,,hadehh tolong dikasih pencerahan&penerangan mas, udah seminggu muter2 disini :( arnowoaji@yahoo.co.id

    • Andre says:

      Maaf y mas arno, comment-nya saya edit, karena kode program yang terlampir terlalu panjang :)
      Kode yang di kirim adalah kode JavaScript yang cukup njelimet, hehe..
      untuk merubah/mengedit suatu theme/template memang bukan hal yang mudah, bahkan mungkin lebih susah daripada membuat template dari asal, karena kita harus mempelajari alur dari template yang dibuat oleh programmernya.

      Setiap theme/template juga sangat berbeda tergantung jenis CMS yang digunakan, apakah itu wordpress atau blogspot. Kalau untuk wordpresss, banyak plugin yang bisa digunakan untuk membuat online shop seperti Woocommerce atau WP e-commerce, namun saya sendiri belum mempelajari cara kerja dari theme tersebut.

      Mungkin mas arno lebih baik kontak pembuat themenya, atau mungkin ada pembaca lain yang bisa bantu :)

  9. Willy says:

    saya disuruh membuat form pendaftaran, tapi saya tidak tahu cara membuat php agar saat tombol submit di click bisa keluar hasilnya.
    jadi bagaimana cara menghubungkan HTML dan PHP nya.,?
    kalo bisa tolon kasih contoh sederhana.,!

  10. Alexa Godlieb says:

    Makasih Banyak Sangat Terbantu Buat Pekerjaan Sekolah :D

  11. mq says:

    Ka yg asal kota itu kan kondisinya ada tiga: jakarta,bandung,semarang. Kalau misalnya lebih dari 3 kota, rumusnya gimana yaa? mohon pencerahannya,,,makasih…

  12. uwii says:

    mas maaf klo pertanyaanny gk mutu ni, he …pemahaman saya agak kurang soal atribut “checked” di contoh form di atas, klo “selected” kn agar yg d beri atribut itu d tampilkan awal, klo “checked” untuk apa, d kode html saya, d tulis atau d hilangkan gk ada perubahannya..

    dan yg bagian ini kenapa penulisan option jakarta bandung semarang berbeda-beda, agak bingung saya mas..hehe

    Asal Kota:

    Jakarta
    Bandung
    Semarang

    • Andre says:

      Mohon maaf uwii, memang ada kesalahan di dalam kode form diatas, atribut checked seharusnya hanya berfungsi untuk checkbox dan radio button, fungsinya untuk menandai checkbox atau radio button pada saat form ditampilkan (misalnya, checkbox sudah otomatis terpilih), namun untuk tag <select>, fungsinya digantikan atribut selected (saya juga sudah koreksinya kode form diatas).

      Perbedaan penulisan dalam tag option diatas adalah adanya tambahan atribut value. Atribut value ini memang tidak akan tampak pengaruhnya di halaman HTML, namun nilai atribut value inilah yang menjadi nilai untuk diproses ketika form dikirim ke server (misalnya menggunakan PHP), untuk tutorialnya telah saya buat di Tutorial Form PHP: Cara Membuat dan Memproses Form HTML dengan PHP.

      Terimakasih atas pertanyaan dan koreksinya uwii.. :)

  13. anwar tsani says:

    maaf gan, saya mau tanya. bagaimana ya cara agar password yang di tampilkan saat buat form login ketika di pilih checklist nya bisa berubah ke karakter, tidak bintang lagi.

    terimakaish ya gan .

  14. dira89 says:

    wah gk keluar… agan.. penggunaan “siku br slash siku” agar tidak terlalu ‘mepet’ apakah penulisannya ditulis lebih dari satu y gan ? atau ada cara lain?

  15. Andre says:

    Untuk ‘mengakali’ tampilan agar tidak terlalu mempet dan berjarak dari tag sebelumnya, dira bisa menggunakan tag <br> beberapa kali. Akan tetapi sebenarnya efek tampilan ini akan lebih cocok jika menggunakan CSS. Property CSS yang bisa digunakan untuk keperluan ini adalah: padding dan margin.

Leave a Reply

Your email address will not be published.

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>