Luento 8 - WWW-lomakkeet
Luennolla näytetyt lomake-esimerkit
Mihin WWW-lomakkeita voi käyttää?
Hyödyt
- Tiedot saadaan talteen sähköisessä muodossa.
- Jatkokäsittely on vaivattomampaa
- Ei tarvitse käsitellä "paperisaastetta".
- Varmempi tapa tietojen keräämiseen kuin mailto-linkki.
- Ajasta riippumattomuus.
Haitat
- Tietojen mahdollinen häviäminen.
- Helppo jättää täyttämättä.
- Lomakkeen käsittelevä ohjelma on monimutkainen
Lomakkeen tekeminen
Seuraavassa kuvassa on nähtävillä yleisimmät lomakkeella käytettävät elementit
sekä input-elementit erilaiset tyypit.
form
Metodit
post
- Lähettää lomakkeen sisällön siten, että se pitää lukea STDIN:stä.
- Kaikki isompi siirtäminen tehdään näin!
get
label
input
select - valintalista
- Erilaisia monivalintoja varten
- Todella tilaa säästävä
- Monivalinnan mahdollisuus. Monipuolisempi kuin valintaruutu tai -nappi.
- Listan ryhmittely mahdollista (optgroup).
- Esimerkki valintalistan käytöstä.
textarea
Lomakkeen käytettävyyden ja esteettömyyden lisääminen
- Kenttien oletusarvot
- Title-elementin käyttäminen kentässä
- Elementtin ryhmittely
- Selkeyttää kyselylomaketta huomattavasti!
- Ryhmittely onnistuu fieldset-elementillä.
- legend-elementillä annetaan ryhmälle otsikko.
- accesskey-omaisuuden käyttäminen
- tabindex-ominaisuuden käyttäminen
Lomakkeen toiminta
- Selainohjelma pyytää palvelimelta lomakesivun.
- Palvelin toimittaa sivun selaimelle.
- Käyttäjä täyttää ja hyväksyy lomakkeen.
- Selain lähettää lomakkeen tiedot WWW-palvelimella sijaitselle CGI-ohjelmalle.
- Lomakkeella oleva data käsitellään CGI-ohjelman tekijän haluamalla tavalla.
Esimerkiksi seuraavasti:
- Erikoismerkit ja välilyönnit palautetaan takaisin.
- Voidaan tehdä tarpeelliset tarkistukset syötteelle.
- Jaetaan data halutulla tavalla.
- Tiedot lähetetään edelleen sähköpostitse.
- Tallennetaan tekstitietokannaksi.
- Tallennetaan suoraan WWW-sivuksi.
- CGI-ohjelma palauttaa käyttäjälle tietoja
- Kiitoksen esimerkiksi tilauksesta.
- Varmistuksen onnistumisesta.
- Tilauksen tai palautteen sisällön.
- Lomakkeen tietojen jatkokäsittelyyn käytetään erilaisia ohjelmistoja.
Lomakkeen lähettäminen vastaanottajalle
Lomakkeen tietojen lähettämisessä kannattaa käyttää CGI-ohjelmaa.
Mailto - Älä käytä ellei pakko!
<form action="mailto:peheinon@mit.jyu.fi" method="post">
Ongelmat
CGI-ohjelma
<form action="http://appro.mit.jyu.fi/cgi-bin/laheta/laheta.cgi" method="post">
<input type="hidden" name="lomake_email" value="peheinon@mit.jyu.fi">
- Ei vaadi käyttäjältä selaimen konfigurointia!
- Voidaan antaa käyttäjälle palautetta!
- Varmin tapa saada tieto perille!
CGI-ohjelmien mukana tulevat tietoturvaongelmat
Jokainen käyttäjä voi tehdä oman lomakkeen, jolla kutsuu tekemääsi CGI-ohjelmaa!
Syventävää luentomateriaalia
Seuraavaan listaan on koottu lisämateriaalia luennon asioista: