naar onze homepage
 HTML
Home
 Forms:

Inleiding

Met speciale tags is het mogelijk formulieren te maken. In een formulier kan de bezoeker van je homepage een veld invullen, in meer-regelige velden tekst schrijven, uit lijsten iets kiezen en op buttons klikken. Als het formulier klaar is kan de bezoeker op een button klikken om het formulier te verzenden.

Bij het maken van het formulier dien je aan te geven wat er met de op het formulier ingevulde data dient te gebeuren. Je kunt je bijvoorbeeld de data per e-mail laten toesturen of de data door middel van een CGI programma op de server laten verwerken.

Formulieren kunnen diverse opgaven vervullen. Ze worden bijvoorbeeld als volgt ingezet:

  • om bepaalde gelijkaardig gestruktureerde informatie van bezoekers te verzamelen,
  • om bezoekers het zoeken in databases mogelijk te maken,
  • om bezoekers de mogelijkheid te geven om zelf data naar een database te sturen,
  • om bezoekers een interaktie-mogelijkheid te bieden om uit een keuzepakket iets te bestellen.

Een software fabrikant kan bijvoorbeeld een formulier ter beschikking stellen waarin de bezoeker kan aangeven welke produkten hij van die firma al gebruikt, hoe hij gehoord heeft van het produkt, welk beroep hij heeft, welke PC en software hij heeft enz. Op deze manier kan de fabrikant gelijkaardig gestruktureerde en daardoor goed vergelijkbare feedback van bezoekers krijgen.

Zoekdiensten ( search-engines ) op het internet bieden nvulformulieren aan, waarin de bezoeker zijn zoekwens kan specificeren. Zonder zulke formulieren zou het doorzoeken van een database helemaal niet mogelijk zijn. De meeste zoekdiensten bieden daarom ook de mogelijkheid om je eigen internetadres bij de zoekdienst aan te melden. Het ophalen van de benodigde informatie gebeurt ook weer door middel van formulieren.

Steeds talrijker worden de bestelmogelijkheden ( e-commerce ) op het internet. Het maakt niet uit of het vliegtickets zijn, pizza's of luxe geschenken, om een bestelling te kunnen realiseren zijn formulieren nodig waarin de bezoeker zijn bestelwensen nauwkeurig kan opgeven.

Indien je de bezoeker van je website alleen de mogelijkheid wil geven om met jou in kontakt te treden is het trouwens veel eenvoudiger om een verwijzing te maken naar je eigen e-mail adres.

Formulieren definiëren.

Je kunt op elke plaats ( in de body ) van een HTML file een formulier definiëren.

Voorbeeld 1:

<html>
<head>
<title>testformulier</title>
</head>
<body>
<form action="mailto:jouwnaam@ergens.nl" method=post enctype="text/plain">
... elementen in het formulier zoals, velden, lijsten, knoppen enz...
</form>
</body>
</html>

Voorbeeld 2:

<form action="/cgi-bin/uitwerken.pl" method="get">
... elementen in het formulier zoals, velden, lijsten, knoppen enz...
</form>

Toelichting:

Met <form ...> definieer je een formulier (form = formulier). Alles, wat tussen deze begintag en de eindtag </form> staat, hoort bij het formulier. Dat zijn hoofdzakelijk formulier elementen zoals invulvelden, keuzelijsten, en buttons. Om die elementen op de goede plaats te krijgen kun je de normale standaard HTML syntax gebruiken.
Tussen <form...> en </form> kun je normale tekst plaatsen en deze tekst met de gebruikelijke HTML formateren. Ook grafieken, verwijzingen, tabellen en/of multi-media elementen zijn in een formulier toegestaan. Zo kun je je formulier optisch verfraaien en van verklarende teksten voorzien.

In de begin-tag <form.....> geef je met action=".." aan, wat er met de ingevulde formulierdata gebeuren moet, zodra de bezoeker het formulier verstuurt (action = aktie). Die verwijzing moet tussen aanhalingstekens staan.

De verwijzing achter action= , is ofwel een e-mail adres ( in normale gevallen je eigen adres ) met daarvoor een mailto: zoals in voorbeeld 1. Dan worden de ingevulde formulierdata aan dat e-mail adres gestuurd. Of er wordt een programma op de server opgeroepen ( meestal een CGI programma ) dat de data verder verwerkt, zoals bij voorbeeld 2.

Bij de formulierdefinitie moet je de verzendingsmethode opgeven. Daarvoor zijn twee mogelijkheden:

  • Je kunt voor method="GET" kiezen, in dat geval worden de data uit het formulier op een WWW-server met een geinstalleerd HTTP-protocol in de variabele QUERY_STRING opgeslagen. Het CGI-programma moet de inhoud van deze variabelen lezen en verwerken.
  • Indien je voor method="POST" kiest, worden de data op de server ter beschikking van "STDIN" gesteld en door het CGI-programma verder behandeld (post = versturen). Omdat in dit geval geen EndOfFile-signaal (EOF) gestuurd wordt, moet het CGI-programma de CGI-variabele CONTENT_LENGTH uitlezen, om de lengte van de verstuurde data en daarmede het eindpunt van de datastroom te bepalen.

Indien je voor toezending per e-mail kiest, gebruik je altijd de method="POST" methode. Verder dien je altijd in zulke gevallen de verwijzing enctype="text/plain" mee aan te geven. Formulierdata zijn namelijk volgens een bepaald schema geformateerd dat door het verwerkende programma goed gebruikt kan worden, maar voor mensen is het geen plezier om dat te lezen. Met deze methode ontvang je tenminste van bezoekers met een modern e-mail programma ( of moderne browser ) leesbare en goed geformateerde e-mails.

Oppassen:

Niet alle browsers beheersen het versturen van formulieren per e-mail.

top