HTML Form — PBA Institute Tutorial
Chapter 11 · HTML Series
10 min read Beginner

HTML Form

An HTML Form is used to collect user input and send it to a server. Forms include input fields, labels, buttons, dropdowns, checkboxes and many other controls. The <form> tag wraps all form elements and defines submission behavior.

What is an HTML Form?

  • Forms collect user data and submit it to a server for processing.
  • Created using <form> with action and method attributes.
  • Common controls: <input>, <select>, <textarea>, <button>.
  • HTML5 forms include built-in validation and new input types.

Why Use Forms?

📝

Data Collection

Capture names, emails, opinions and any user input.

🔐

Login Systems

Forms power login, signup and authentication flows.

🛒

E-commerce

Place orders, billing and shipping forms.

📊

Surveys

Conduct polls, feedback and research forms.

📧

Contact

Allow visitors to send messages directly.

Validation

HTML5 attributes validate input before submission.

Form Syntax

  • <form action="/submit" method="post"> ... </form>
  • Input: <input type="text" name="username">
  • Label: <label for="id">Name:</label>
  • Textarea: <textarea>...</textarea>
  • Select: <select><option>...</option></select>
  • Submit Button: <button type="submit">Send</button>

HTML Form Example

HTML Code — Contact Form
<!DOCTYPE html>
<html>
<body>

  <form action="/submit" method="post">
    <label for="name">Name:</label>
    <input type="text" id="name" name="name" required>

    <label for="email">Email:</label>
    <input type="email" id="email" name="email" required>

    <label for="msg">Message:</label>
    <textarea id="msg" name="msg"></textarea>

    <button type="submit">Send</button>
  </form>

</body>
</html>
Output A contact form with Name, Email, Message fields and a Send button.

Code Explanation

HTML Part Meaning
<form> Wraps all input controls and defines submission.
action URL where form data is sent.
method HTTP method: get or post.
<input> Single-line input field; type controls the kind of input.
<label> Defines a label tied to an input via the for attribute.
required HTML5 attribute that prevents empty submission.

Form Element Categories

Text
text email password
Choice
radio checkbox select
Special
date file range
Action
submit reset button

Use Cases

  • Contact forms: Allow users to send messages.
  • Login pages: Username and password authentication.
  • Checkout: Collect shipping and payment info.
  • Surveys: Multiple-choice and feedback collection.

Practice Questions

  • Create a signup form with name, email, password fields.
  • Add a dropdown <select> with three options.
  • Build a feedback form with radio buttons and a textarea.
  • Add validation with required and minlength attributes.

Frequently Asked Questions

What is the difference between GET and POST?

GET appends data to the URL; POST sends data in the request body. POST is preferred for sensitive data.

How can I validate a form?

Use HTML5 attributes like required, pattern, min, max — or use JavaScript.

What is the for attribute in label?

It links the label to an input's id, making the label clickable.

Can I upload files?

Yes, use <input type='file'> and method='post' with enctype='multipart/form-data'.

Conclusion

HTML Forms are essential for user interaction on the web. Whether for contact, signup, login or surveys, mastering forms — input types, labels, validation — is critical for every web developer.

Additional Tips

  • Use labels: Always pair inputs with labels for accessibility.
  • Use proper input types: email, tel, number, date for better UX.
  • Validate on client and server: Never trust client input alone.
  • Add placeholders: Guide users with example values.

HTML All Topics

Continue Learning