Webtechnologie 1 labo Dieter Roobrouck Kristel Balcaen Claudia Eeckhout Koen De Weggheleire Frederik...
-
Upload
laura-segers -
Category
Documents
-
view
214 -
download
0
Transcript of Webtechnologie 1 labo Dieter Roobrouck Kristel Balcaen Claudia Eeckhout Koen De Weggheleire Frederik...
Webtechnologie 1 laboWebtechnologie 1 labo
Dieter RoobrouckDieter Roobrouck
Kristel BalcaenKristel Balcaen
Claudia EeckhoutClaudia Eeckhout
Koen De WeggheleireKoen De Weggheleire
Frederik DuchiFrederik Duchi
An DeraedtAn Deraedt
Les 6: Forms en FramesLes 6: Forms en Frames
Web
techn
olo
gie L
abo
1W
ebtech
no
log
ie Lab
o 1
Inhoud Forms
Waarvoor?Hoe?
StructuurVerwerking
Web
techn
olo
gie L
abo
1W
ebtech
no
log
ie Lab
o 1
Waarvoor gebruiken?
Bezoekers van de site de mogelijkheid bieden om informatie in te voeren en te versturen.geven van een reactieaanmelden als abonnee invullen van enquêteplaatsen van bestellingbeantwoorden van vragen
Web
techn
olo
gie L
abo
1W
ebtech
no
log
ie Lab
o 1
Formulieren: hoe?
2 aspecten: structuur van formulier
gebruik van <form></form> en veldenOok alle andere tags mogenuitz: geen forms nesten!
verwerking van gegevens (form handler):
Hoe wordt formulier verstuurd?Waar moet formulier naartoe?
Web
techn
olo
gie L
abo
1W
ebtech
no
log
ie Lab
o 1
Formulieren: hoe?
formulieren worden begrensd door <form>
<form method="post"_action="bestemming">
<!-- inhoud van het formulier -->
<!– tags --><!– velden -->
</form>
Attributen bij form: zie verder
Web
techn
olo
gie L
abo
1W
ebtech
no
log
ie Lab
o 1
Formulieren: structuurelementen
form-element input-element button-element textarea-element select-element
option-element optgrouplabel-element fieldset-element
Web
techn
olo
gie L
abo
1W
ebtech
no
log
ie Lab
o 1
Soorten velden
tekstvelden
keuzerondjesaankruisvakjes
Web
techn
olo
gie L
abo
1W
ebtech
no
log
ie Lab
o 1
Soorten velden
knoppentekstvakken
keuzelijsten
Web
techn
olo
gie L
abo
1W
ebtech
no
log
ie Lab
o 1
type veld
grootte veld
tekst die in het veld staat
Input type="text"
Tekstvelden<input type="text" name="veldnaam" size="20" maxlength="30“ value="inhoud veld“ />
veldnaam
maximaal aantal
karakters
Enkel bij type="text"
Web
techn
olo
gie L
abo
1W
ebtech
no
log
ie Lab
o 1
Input type="password"
<input type="password" name="paswoord" size="8" />
ingetypte tekst wordt gemaskeerd weergegeven
Web
techn
olo
gie L
abo
1W
ebtech
no
log
ie Lab
o 1
Label
<label for="vrnm"> Voornaam</label><input type="text" name="voornaam" id="vrnm" />
label-element (<> label-attribuut van optgroup-element!) = tekst (gebruikelijk enkele woorden) die met een tekstveld, checkbox of radioknop kan worden geassocieerd.
Zoals label in prog1
Web
techn
olo
gie L
abo
1W
ebtech
no
log
ie Lab
o 1
A-Oefening1
Maak het volgende eenvoudige formulier, zonder tabel en met labels
Web
techn
olo
gie L
abo
1W
ebtech
no
log
ie Lab
o 1
B-oefening 1
Maak het volgende formulier na:Gebruik geen tabellenGebruik labels
Web
techn
olo
gie L
abo
1W
ebtech
no
log
ie Lab
o 1
Input type="radio" Een lijst opgeven waaruit er 1 keuze kan
gemaakt worden (radio buttons) Voorbeeld:
<input type="radio" name="browser"name="browser" value="NN"/>Netscape Navigator<br /><input type="radio" name="browser"name="browser" value="MSIE” checked=“checked” />Explorer
name-attribuut groepeert samenhorende radio buttons
Web
techn
olo
gie L
abo
1W
ebtech
no
log
ie Lab
o 1
A-OEFENING 2
Maak deze kennistest na:
Web
techn
olo
gie L
abo
1W
ebtech
no
log
ie Lab
o 1
B-OEFENING 2
Maak deze kwisvraag na:
Web
techn
olo
gie L
abo
1W
ebtech
no
log
ie Lab
o 1
Input type="submit" & "reset"
<input type="submit" value="Verzend bericht" name="verzend" />
<input type="reset" value="Wis bericht" name="wis" />
Het value-attribuut bepaalt de tekst die op de knoppen te lezen staat
Web
techn
olo
gie L
abo
1W
ebtech
no
log
ie Lab
o 1
Andere inputvelden
<input type="hidden" name="paswoord" />onzichtbaar veld, inhoud wordt wel mee
verzonden <input type="file" name="bestand"
accept=""/>mogelijkheid om een file mee te sturen. <form enctype="multipart/form-data”>
<input type="image" src="knop.gif" name="knop" alt="submit" /> image als submit-knop
Web
techn
olo
gie L
abo
1W
ebtech
no
log
ie Lab
o 1
Button
Ipv input: ook gebruik van button: in container kan je content plaatsen
<button type="submit" value="Verzend bericht">tekst</button>
<button type="reset" value=“Wis bericht">tekst</button>
Push button: geen default actiembv scripting (cf sem2) wordt actie bepaald
<button type="button" value=“actie“ name=“knop”>tekst</button>
Web
techn
olo
gie L
abo
1W
ebtech
no
log
ie Lab
o 1
A-Oefening 3
Maak dit voorbeeld naGebruik A-Oefening1.htmZorg dat de waarde Username
standaard is ingesteldDe Vraag knop is een submitknop
Web
techn
olo
gie L
abo
1W
ebtech
no
log
ie Lab
o 1
Input type="checkbox"
Checkboxes worden gebruikt wanneer de bezoeker meerdere mogelijkheden tegelijk kan kiezen<input type="checkbox" name="fruit" value="appel" />appels<input type="checkbox" name="fruit" value="peer" />peren
Web
techn
olo
gie L
abo
1W
ebtech
no
log
ie Lab
o 1
Textarea
Onbeperkte hoeveelheid tekst invoeren.<textarea name="commentaar" rows="4" cols="50"> hier komt de tekst </textarea>
Attributen: readonly="readonly"disabled="disabled"
Web
techn
olo
gie L
abo
1W
ebtech
no
log
ie Lab
o 1
A-OEFENING 4
Gebruik externe cssGeen tabellen!!giraffe-peek.jpg
Web
techn
olo
gie L
abo
1W
ebtech
no
log
ie Lab
o 1
Select & Option (dropdownlist)
<select name="browser"><option value="nn">Netscape</option><option value="ie">Explorer</option><option value="op">Opera</option><option value="an">Andere</option>
</select>
Web
techn
olo
gie L
abo
1W
ebtech
no
log
ie Lab
o 1
Select & Option (keuzelijst)
Extra attributen select:size="4": bepaalt hoeveel keuzes
tegelijk zichtbaar zijnmultiple="multiple": bepaalt aantal
mogelijke keuzes (ctrl-klik voor meerdere keuzes)
Extra attributen option:value="waarde": waarde die naar de
server zal gestuurd wordenselected="selected": keuze die
als standaard zal getoond worden
Web
techn
olo
gie L
abo
1W
ebtech
no
log
ie Lab
o 1
Optgroup Veel keuzes? Maak gebruik van
<optgroup></optgroup> Het attribuut label groepeert<select>
<optgroup label="Swedish Cars"><option value ="volvo">Volvo</option><option value ="saab">Saab</option>
</optgroup><optgroup label="German Cars">
<option value ="mercedes">Mercedes</option><option value ="audi">Audi</option>
</optgroup></select>
Web
techn
olo
gie L
abo
1W
ebtech
no
log
ie Lab
o 1
Value, type, size, …
Opgelet: correct gebruiken van attributen! http://www.w3schools.com/tags/tag_input.asp
Input type=“button”: value=tekst op de button.
Checkboxes and radio buttons: wat wordt doorgestuurd naar action URL.Verplicht gebruik bij type="checkbox" and type="radio
Hidden, password, text fields: = default value van het element.
Kan niet worden gebruikt bij type="file"
Web
techn
olo
gie L
abo
1W
ebtech
no
log
ie Lab
o 1
A-Oefening 5
Maak de volgende keuzelijst op 2 manieren:
Web
techn
olo
gie L
abo
1W
ebtech
no
log
ie Lab
o 1
Fieldset
Kan gebruikt worden om een aantal controls van een formulier te groeperen door er een kader om te plaatsen.
<fieldset>Height <input type="text" size="3" />Weight <input type="text" size="3 " />
</fieldset>
Web
techn
olo
gie L
abo
1W
ebtech
no
log
ie Lab
o 1
Legend
Plaatst een bijschrift bij het fieldset-element
<fieldset><legend>Health information:</legend> Height <input type="text" size="3“ />Weight <input type="text" size="3“ />
</fieldset>
Web
techn
olo
gie L
abo
1W
ebtech
no
log
ie Lab
o 1
A-Oefening 6
Enquete
Web
techn
olo
gie L
abo
1W
ebtech
no
log
ie Lab
o 1
Verwerking van gegevens
Gegevens worden doorgestuurd als 1 lange lijn gegevens met scheidingstekens
Gegevens moeten opgesplitst worden tot leesbaar geheel
Web
techn
olo
gie L
abo
1W
ebtech
no
log
ie Lab
o 1
Verwerking van gegevens
Doorsturen naar e-mailadres: wordt ondersteund door IE4+, NN2+werkt alleen goed als de surfer naast
de browser ook de bijhorende emailclient gebruikt.
Werkt niet goed, beter is gegevens doorsturen naar een CGI-script
Web
techn
olo
gie L
abo
1W
ebtech
no
log
ie Lab
o 1
Verwerking van formgegevens
<form> attributen:
methodget post
action (moet altijd worden toegevoegd!)
Web
techn
olo
gie L
abo
1W
ebtech
no
log
ie Lab
o 1
form method=“get"
Gegevens worden aan adres gekleefd en in 1 keer doorgestuurd
Alleen ASCII-karakters toegelaten dus geen é of ï
Web
techn
olo
gie L
abo
1W
ebtech
no
log
ie Lab
o 1
form method=“post"
Alle info wordt uit het formulier opgenomen en verzonden naar adres bij action-attribuut
Ook non ascii-karakters toegelatenTe gebruiken bij action=mailto:...
Beste methode !!
Web
techn
olo
gie L
abo
1W
ebtech
no
log
ie Lab
o 1
form action="..."
MOET altijd worden toegevoegd
mailto: [email protected] kan ook toegevoegd [email protected]?
subject=onderwerp]
http://www.provider.be/cgi-bin/form.cgiverwijzing naar cgi-script
Web
techn
olo
gie L
abo
1W
ebtech
no
log
ie Lab
o 1
Frames
Inleiding Wat zijn frames? Document type definitions (DTD)
Hoe maak ik frames? Eenvoudige Frames Eigenschappen van frameset Eigenschappen van frames
Extra Hyperlinks en frames Noframes Complexe frames
Web
techn
olo
gie L
abo
1W
ebtech
no
log
ie Lab
o 1
Wat?
Documentvenster opdelen in meerdere vensters
In elk venster wordt een aparte xhtml-pagina opgeladen
xHTML-pagina’s kunnen onafhankelijk van elkaar vervangen worden
Web
techn
olo
gie L
abo
1W
ebtech
no
log
ie Lab
o 1
xHTML frameset (herhaling)
xHTML1.0 Frameset DTD Bevat alle elementen uit transitional +
frames elementen Gebruik deze DTD als je je browser
window wil opdelen in meerdere deelvensters
Web
techn
olo
gie L
abo
1W
ebtech
no
log
ie Lab
o 1
Hoe?
Benodigde xHTML-pagina’s:1 frameset - pagina die de frames
opdeelt1 inhoud-pagina per venster
Web
techn
olo
gie L
abo
1W
ebtech
no
log
ie Lab
o 1
Klassikale oefening
Hoeveel xhtml-pagina’s zijn er nodig voor de volgende frame-structuren?
Hoeveel van deze pagina's zijn er normale xhtml-pagina's (= inhoud van een frame) en hoeveel hebben een afwijkende structuur (= frameset-pagina's)?
Web
techn
olo
gie L
abo
1W
ebtech
no
log
ie Lab
o 1
Frame-inhoud
De pagina's met de frame-inhoud zijn normale xhtml-pagina's
Browser: rechts klikken in een frame / view source (bron weergeven) voor de xhtml-code van de pagina in de frame
Web
techn
olo
gie L
abo
1W
ebtech
no
log
ie Lab
o 1
Frameset-pagina
Frameset ipv body
<html> <head> </head>
<body> </body>
</html>
<html> <head> </head>
<frameset> </frameset>
</html>
normale xhtml-pagina frameset-pagina
Web
techn
olo
gie L
abo
1W
ebtech
no
log
ie Lab
o 1
Frameset eigenschappen
<frameset> </frameset>
Basis attributen:aantal rijen (rows)aantal kolommen (cols) id, class, title, style
Web
techn
olo
gie L
abo
1W
ebtech
no
log
ie Lab
o 1
Frameset: rijen
<frameset rows="... , ... , ...">Aantal waarden = aantal rijenMogelijke waarden:
pixelwaardepercentagewildcard *
vb:<frameset rows="15%, * ,15%"><frameset rows="200, * ">
Web
techn
olo
gie L
abo
1W
ebtech
no
log
ie Lab
o 1
Frameset: kolommen
<frameset cols="... , ... , ...">Aantal waarden = aantal rijenMogelijke waarden:
pixelwaardepercentagewildcard *
vb:<frameset cols="15%, * ,15%"><frameset cols ="200, * ">
Web
techn
olo
gie L
abo
1W
ebtech
no
log
ie Lab
o 1
Frameset met frames
Binnen een <frameset> worden de verschillende vensters gedefinieerd met de <frame> tag
<frame>: minstens volgende attribuut:src: bronbestand dat in die frame moet
geladen worden
<frame src="inhouda.htm" /><frame src="inhoudb.htm" />
A B
Web
techn
olo
gie L
abo
1W
ebtech
no
log
ie Lab
o 1
Frameset: basiscode
<html><head>
<title>titel</title></head><frameset cols="20%,80%">
<frame src="links.htm" /><frame src="rechts.htm" />
</frameset></html>
Web
techn
olo
gie L
abo
1W
ebtech
no
log
ie Lab
o 1
A-oefening 7
Experimenteer met A-oefening7.htm Verander de broncode in het tekstveld Experimenteer met afmetingen van
frames, aantal frames vermeerderen en verminderen, onlogische opdrachten (vb: cols="15%, 20%, 25%"), enz.
Gebruik om de frames op te vullen de bestanden frame_a.htm t/m frame_e.htm
Web
techn
olo
gie L
abo
1W
ebtech
no
log
ie Lab
o 1
A-oefening 8
Maak de opmaak van volgende pagina na, gebruikmakend van frames en van afbeelding goodprice.gif
Web
techn
olo
gie L
abo
1W
ebtech
no
log
ie Lab
o 1
frame: attributen
name="..." id="..." beide samen gebruiken: unieke naam geven aan een frame zodat je die kan addresseren
class="..."style="..."
Web
techn
olo
gie L
abo
1W
ebtech
no
log
ie Lab
o 1
frame: attributen
noresize="noresize" balk tussen frames is vast
scrolling="..." schuifbalken "yes" = schuifbalken altijd weergegeven"no"= geen schuifbalken"auto" = browser kiest
longdesc="..." URL waar een samenvatting staat van de inhoud van de frames (voor browsers die geen frames ondersteunen)
Web
techn
olo
gie L
abo
1W
ebtech
no
log
ie Lab
o 1
Hyperlinks en frames: Een hyperlinkdocument wordt geopend in het
frame waarin de hyperlink staat. Transitional DTD only
Anders: Voeg attribuut target toe aan <a> met als
waarde de naam van een frame Definieer de naam van een frame met het
attribuut name van <frame> of gebruik voorgedefinieerde namen:
"_blank” : nieuwe venster "_parent”: frameset vervangen door link "_top” : volledige venster"_self”: in het frame van de hyperlink zelf
Web
techn
olo
gie L
abo
1W
ebtech
no
log
ie Lab
o 1
Hyperlinks en frames:<html><head>
<title>Voorbeeld frames</title></head><frameset rows="120,*">
<frame src="frame1.htm” name="inhoudframe“ /><frame src ="frame2.htm" name ="hoofdframe“ />
</frameset ></html>
In frame1.htm zijn de hyperlinks bv als volgt opgenomen:<a href="frame3.htm” target="hoofdframe">voorbeeld
a</a><a href="frame4.htm” target="hoofdframe">voorbeeld
b</a>
Web
techn
olo
gie L
abo
1W
ebtech
no
log
ie Lab
o 1
Hyperlinks en frames:
Transitional DTD onlyBij gebruik van veel hyperlinks:
Plaats <base target=“waarde” /> in de <head>- sectie van het te laden htm document.
target bepaalt hier het frame waar alle hyperlinksdocumenten geopend moeten worden.
Voor uitzonderingen gebruik je in <a> het target attribuut
<html><head> <title>Voorbeeld frames</title> <base target="onder“ /></head><body>
<body>
</html>
Web
techn
olo
gie L
abo
1W
ebtech
no
log
ie Lab
o 1
A-oefening 9 Valid enkel in TRANSITIONAL DTD (voor subpagina’s)
Vul de webpagina van A-oefening 2 aan met de volgende hyperlinks: http://www.delta.com http://www.virginexpress.com http://www.iberia.com
Deze links moeten openen in een volledig nieuw venster!
Web
techn
olo
gie L
abo
1W
ebtech
no
log
ie Lab
o 1
Noframes
Niet alle browsers ondersteunen frames!Gebruik <noframes> in één van de
framesets. De door <noframes> ingesloten inhoud
is alleen zichtbaar in browsers die geen frames ondersteunen.
Gebruik <body> binnen het noframes-gedeelte om de kleur van achtergrond, de tekst en de hyperlinks van de inhoud van <noframes> te bepalen
Web
techn
olo
gie L
abo
1W
ebtech
no
log
ie Lab
o 1
Complexe frames
Systematisch te werk gaan! Maak eerst het gehele venster door
deze ofwel verticaal in rijen, ofwel horizontaal in kolommen te verdelen
Web
techn
olo
gie L
abo
1W
ebtech
no
log
ie Lab
o 1
Framesets maken
Gebruik slechts 1 FrameDefinitionFile
Laadt in 1 pagina ALLE frames in ipv 1 pagina met 2 frames met in elk frame een pagina met 2 frames, …
Web
techn
olo
gie L
abo
1W
ebtech
no
log
ie Lab
o 1
Einde les 6