Banner image for a switzCodes blog post titled ‘HTML Forms – How I Learned to Collect User Input,’ featuring the switzCodes logo in dark blue, white, and green tones with form field icons.

📝 HTML Forms – How I Learned to Collect User Input

📅 August 25, 2025

✍️ By Evans

Hey friends! 👋

After learning how to display data with tables, I was curious about something new — how do websites actually collect information from users?

Like those login pages, signup forms, and contact sections. 🤔

That’s when I discovered HTML forms. They’re what make websites interactive — allowing users to type, click, and send data. Let’s dive in! 🚀

💡 What Is an HTML Form?

An HTML form is like a container that holds input elements such as text boxes, buttons, checkboxes, and more.

Here’s the simplest form example I started with:


<form>
  <label for="name">Name:</label>
  <input type="text" id="name" name="name">

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

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

Let's break it down 👇

  • <form> — wraps all your input fields.
  • <label> — tells users what each input is for.
  • <input> — the actual field where the user types.
  • <button> — used to submit the form.

📤 The action and method Attributes

These two attributes tell the browser what to do when a form is submitted.


<form action="submit.html" method="post">
  <input type="text" name="username">
  <button type="submit">Send</button>
</form>
                    
  • action — where the data goes (like another page or server).
  • method — how the data is sent.
    • GET adds it to the URL (for simple searches).
    • POST hides it in the background (for logins, signups, etc.).

✍️ Common Input Types

Forms can collect many types of data. Here are some I practiced with:


<form>
  <input type="text" placeholder="Your name"><br>
  <input type="email" placeholder="Your email"><br>
  <input type="password" placeholder="Your password"><br>
  <input type="checkbox"> Remember me<br>
  <input type="radio" name="gender" value="male"> Male
  <input type="radio" name="gender" value="female"> Female<br>
  <button type="submit">Submit</button>
</form>
                        

Each input type behaves differently:

  • text → simple one-line input
  • email → checks for a valid email format
  • password → hides what you type
  • checkbox and radio → let users choose options

💬 A Quick Example I Tried

I created a simple Contact Me form like this:


<h2>Contact Me</h2>
<form>
  <label for="name">Name:</label><br>
  <input type="text" id="name" name="name" placeholder="Enter your name"><br><br>

  <label for="message">Message:</label><br>
  <textarea id="message" name="message" rows="4" cols="30" placeholder="Your message here..."></textarea><br><br>

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

And just like that — I had my first interactive HTML page! 😄

💡 Some Beginner Tips

  • Always use
  • Give your inputs id and name attributes — they help identify the data.
  • Use placeholder to guide users on what to type.
  • Don’t forget a submit button! 😅
  • You can style forms beautifully later with CSS.

🎯 What I Learned

Learning forms felt like a big step forward for me. I wasn’t just writing text or adding images anymore — I was creating real user interaction.

It’s awesome to know that every signup page, search bar, and comment box starts with just these simple tags.

👉 What's Next?

In my next post, I’ll be learning about Input Types and Form Elements – Text, Radio, Checkbox, Button — where I’ll go deeper into the different kinds of input fields available in HTML.

Catch you in the next one! 🙌

— Evans 💻