Introduktion: Formulär används idag i stor
usträckning, för att t.ex. hämta information från
databaser, hantera inloggning eller att göra undersökningar.
Detta är bara början och om du ska göra en större sida
med databaskopplingar, hinner du inte skriva många rader kod innan du
är tvungen att titta närmare på hur formulär fungerar.
Med detta dokument vill jag på ett snabbt sätt förklara
hur du hanterar formulären, vilka de olika indatatyperna är, samt
hur data hanteras när formuläret väl skickas.
till att börja med, formulär håller sig inom <form>-taggen
och alla input-fält måste finnas inom dess start- och sluttaggar.
Koden ser ut enligt följande:
Vi återkommer till form-taggarna lite senare, men för
tillfället koncentrerar vi oss på de olika input-typerna.
De olika input-typerna
Radio: Den första typen är "radio". Bara en knapp inom samma
namngrupp kan vara aktiv åt gången. Det är därför
väldigt viktigt att man använder "name" korrekt. Du kan
ha flera olika radio-grupper inom samma formulär, tack vare att den bara
tittar på just name-attributet.
Det viktiga för oss nu är dels action,
dels method. Action är det
script som ska ta hand om informationen. För att göra
något vettigt av data, är det oftast något form
av script som tar hand om data, som till exempel en ASP-sida, PHP
eller CGI. Action anger helt enkelt vilket script
vi vill skicka vidare data till. Du kan om du vill skicka data
till en helt annan domän, men på grund av
säkerhetsriskerna är det idag en del browsers som inte
stödjer detta längre. Däremot kan du alltid ange
relativa eller absoluta sökvägar inom din egen domän.
För att du ska ange korrekt HTML-syntax, måste action
alltid vara med.
Nästa del är method. Detta anger
på vilket vis data skickas. Det finns två olika sätt,
post och get. Get
använder sig av URL:en för att skicka med data, nackdelen
med detta är att man inte kan skicka med särskilt mycket
data, ca 4kb har jag hört, men det beror på klient och
server. Om du någon gång sett en URL som sett ut ungefär
som http://www.doman.se/sida.asp?val1=bla (för att
ta data från tidigare exempel), så är detta
med största sannorlikhet resultatet av en get-query.
Om du däremot behöver skicka med en större mängd
data, måste du använda dig av post. Den
skickar med data som en http-header, vilket gör att den klarar
av betydligt större datamängder, du kan till och med
ladda upp hela dokument eller filer på detta sätt.
Detta är grunderna i formulär och har du läst
så här långt, kommer du troligtvis hålla
på en hel del med detta. Lycka till!