paw, reinisch, 2000 11 28

form

definiert ein FORMularfeld, in dem der besucher daten eingeben und verarbeiten lassen kann. der datenfluss kehrt sich um, informationen werden werden vom besucher zum server uebertragen.
typische beispiele sind guestbooks, mailformulare, suchabfragen oder auch online-shopsysteme.

viele formanwendungen verlangen ein programm am webserver, das die uebergebenen daten verarbeitet (meisst cgi in der sprache perl). es werden paare von variablen und deren werten uebergeben.

aufbau:
<html><body> 
	<form> (startet das formularfeld, definitionen)
		<input type="..."> (einzeleingabewerte)
		<select>...</select> (liste mit auswahl)
		<textarea>...</textarea> (mehrzeiliges textfeld)
	</form> 
</body></html> 

achtung fuers austesten:
es werden geaenderte formularfelder im browser erst angezeigt, nachdem sie <shift>+reload gedrueckt haben.

weiterfuehrende (kuenstlerische) infos:
http://www.c3.hu/collection/form/

im detail:

<form 
	action="mailto:fh@reinisch.at" 
(programm, das ausgefuehrt werden soll; zb.: "cgi-bin/guestbook.cgi") 
	method="post" 
(methode, mit der daten uebertragen werden; entweder "get" mit maximal 256 zeichen oder "post" - mehr zeichen, aber keine anzeige im adressfeld) 
	enctype="text/plain" 
(kodierung der daten, fuers mailto: als text)
	> 

	<input type="text" name="inhalt" size="30" maxlength="40" value="blabla"> 
(einzeiliger text, variablenname 'inhalt', vorgabewert 'blabla', laenge maximal 40 zeichen, 30 zeichen davon werden im browser angezeigt)

	<input type="submit" value="weg damit"> 
(submit-button, damit werden die daten den auzufuehrenden programm uebergeben) 
	<input type="reset" value="noch einmal"> 
(reset-button, damit werden alle eingabefelder auf den vorgabewert zurueckgesetzt) 
	
	<input type="hidden" name="versteckt" value="nicht sichtbar"> 
(variable+wert wird nicht angezeigt, aber mituebergeben; benutzer braucht bei mehrmaligen formularaufruf nicht jedesmal alle daten eingeben) 

	<input type="radio" name="antwort" value="ja">antworten<br> 
	<input type="radio" name="antwort" value="nein">nicht antworten<br> 
('radio'-button, es kann nur einer von mehreren buttons mit dem gleichen variablennamen angeklickt werden) 

	<input type="checkbox" name="zusatz" value="liebe">liebesbrief<br> 
	<input type="checkbox" name="zusatz" value="geschaeft">geschaeftsbrief<br> 
(checkbox, es eine, mehrere oder keine der checkboxen mit dem gleichen variablennamen angeklickt werden) 

	<textarea name="langtext" rows="10" cols="50">langer teeeeeeeext</textarea> 
(mehrzeiliges textfeld, kein automatischer zeilenumbruch)

	<textarea name="langtext2" rows="6" cols="3" wrap="virtual oder physical">langer langer langer langer langer langer langer langer langer langer langer langer teeeeeeeext</textarea> 
(mehrzeiliges textfeld, automatischer zeilenumbruch; bei wrap="virtual" wird der text nur in der anzeige umgebrochen, bei wrap="physical" die zeilenumbrueche auch dem programm uebergeben )

	<select name="auswahl" size="3"> 
	<option> option1 
	<option selected> option2 
	<option> option3 
	<option> option4 
	<option> option5 
	</select> 
(einfachauswahl, 'selected' ist vorausgewaehlt)

	<select name="auswahl_m" size="3" multiple> 
	<option> option1 
	<option selected> option2 
	<option selected> option3 
	<option> option4 
	<option> option5 
	</select> 
(mehrfachauswahl mittels 'strg'-taste bei angabe von 'multiple')

	<select name="auswahl_p"> 
	<option value="0">option 0 
	<option value="1">option 1 
	<option value="2">option 2 
	<option value="3" selected>option 3 
	<option value="4">option 4 
	</select> 
(ohne angabe von 'size' gibts ein pulldownmenue; mit der angabe von 'value="xxx"' wird bei auswahl der angegebene wert anstelle des textes uebertragen)

</form>