<?xml version="1.0" encoding="ISO-8859-1"?>


<?xml-stylesheet type="text/xsl" href="../xsl/kapitel-html.xsl"?>

<kurs nummer="1">
<titel>Webseiten Quick'n easy</titel>
<ref back="kap5.xml" next="kap7.xml" home="index.xml" main=""/>


<kapitel nummer="6">
  <titel>Ein kleines Feedback-Formlar</titel>

  <absatz>
    <bild src="screenshot6.8.jpg" alt="" align="left" width="100" height=""/>
    <text>
      Für ein Formular benötigt man zwei Dinge: Eingabefelder und ein
      Programm, welches die Eingaben verarbeitet.
    </text>
    <text>
      Die Eingabefelder bekommen wir im HTML. Ein Programm zum Auswerten
      der Eingaben wird von vielen Webspace-Providern angeboten.  In der
      Regel sendet dieses Programm eine Email an eine angebbare Adresse.
      Normaler Weise sind für einen ersten Schritt keine weiteren
      Programmierkenntnisse erforderlich. Wie die jeweiligen Programme
      zu verwenden sind und worauf man achten muß, erfährt man vom
      jeweiligen Anbieter.
    </text>
    <text>
      Fehlen einem ein fertiges Programm und die Kenntnisse selbst eines
      zu schreiben,
      kann man sich die Eingaben vom Webbrowser per Email zukommen
      lassen. Diese Funktion ist in den meisten Webbrowsern aktiviert.
    </text>
    <text>
      Wir werden uns hier auf die Erstellung eines Formulars
      konzentrieren und dieses per Webbrowserfunktion an eine Adresse
      schicken lassen.
    </text>
  </absatz>

  <unterkapitel nummer="1">
    <titel>Formular Grundstruktur</titel>
    <absatz>
    <text>
      Als erstes müssen wir unserem Browser mitteilen, daß wir ein
      Formular erstellen wollen. Hierfür haben wir die Tags &lt;form>
      und &lt;/form>.
    </text>
    <text>
      In diesen Tags haben wir ein Attribut: action="". Hier geben wir
      an wohin der Webbrowser die Eingaben schicken soll: in unserem
      Fall unsere Emailadresse, allerdings in einer speziellen Form:
      mailto:ich@example.com
      Bietet der Provider ein fertiges Programm für Feedbackformulare
      an, enthält die Dokumentation auch die Angabe, die man statt
      'mailto:ich@example.com' verwenden muss. In der Regel sind
      auch Beispiele vorhanden.
    </text>
    <text>
      Unser folgendes Beispiel enthält ein minimales Formular: ein
      Eingabefenster und ein Knopf zum Abschicken des Formulars.
    </text>
    <code>
    <file src="6.1.html" text="BeispielCode" />
    <bild src="screenshot6.1.jpg" alt="" align="right" width="300" height=""/>
    <codesrc>
&lt;html>&lt;head>&lt;title>erstes Formular&lt;/title>
&lt;/head>&lt;body>

  &lt;form action="mailto:info@nekosoft.de" method="post">

     Bitte geben Sie Ihren Vornamen ein:
     &lt;input type="text" name="vname" size="10">

     &lt;br>

     &lt;input type="submit" value="abschicken">
  &lt;/form>

&lt;/body>&lt;/html>
    </codesrc>
    </code>
    </absatz>

    <absatz>
    <text>
      Ein Eingabefenster für Texteingaben sieht in seiner einfachen Form
      wie folgt aus:
    </text>
    <text>
      &lt;input type="text" name="name" size="10">
    </text>
    <text>
      type gibt an, dass es sich um Text handelt.
    </text>
    <text>
      name enthält die Information für das später verarbeitende
      Programm, um den Inhalt zuzuordnen. Dieser Inhalt muss abgestimmt
      werden. Jetzt, hier zum Üben, haben Sie vorerst die freie Wahl.
    </text>
    <text>
      size gibt an, wie viele Zeichen das Feld im Webbrowser breit sein
      soll. Die Länge beschränkt nicht die Menge der eingebbaren
      Zeichen, sondern nur die Breite des Eingabebereiches.
    </text>
    <text>
      Über die Angabe method="post" denken wir später nach und
      übernehmen sie einfach erst einmal nur.
    </text>
    <text>
      Jetzt macht es Sinn das Formular kurz auszuprobieren. Das
      erleichtert Ihnen den folgenden Absatz. Vergessen Sie nicht die
      Emailadresse gegen Ihre eigene auszutauschen!
    </text>
    </absatz>


  </unterkapitel>

  <unterkapitel nummer="2">
    <titel>Formularfelder mit input-Tag</titel>

    <absatz>
    <code>
    <file src="6.2.html" text="BeispielCode" />
    <bild src="screenshot6.6.jpg" alt="" align="right" width="200"
    height=""/>
    <codesrc>
&lt;html>&lt;head>&lt;title>Auswahl mit input&lt;/title>
&lt;/head>&lt;body>

  &lt;form action="mailto:info@nekosoft.de" method="post">

&lt;h3>Auswahl mit input...&lt;/h3>

&lt;table>
&lt;tr>
&lt;td>Texteingabe &lt;/td>
&lt;td>&lt;input type="text" name="name" size="15">&lt;/td>
&lt;/tr>

&lt;tr>
&lt;td>Passwort &lt;/td>
&lt;td>&lt;input type="password" name="passwort" size="8">&lt;/td>
&lt;/tr>

&lt;tr>
&lt;td>Button abschicken &lt;/td>
&lt;td>&lt;input type="submit" value="abschicken">&lt;/td>
&lt;/tr>

&lt;tr>
&lt;td>Button zurücksetzen &lt;/td>
&lt;td>&lt;input type="reset" value="nochmal">&lt;/td>
&lt;/tr>

&lt;tr>
&lt;td>Einmalauswahl &lt;/td>
&lt;td>&lt;input type="radio" name="radioauswahl" value="1">
&lt;input type="radio" name="radioauswahl" value="2">
&lt;input type="radio" name="radioauswahl" value="3">&lt;/td>
&lt;/tr>

&lt;tr>
&lt;td>Mehrfachauswahl&lt;/td>
&lt;td>&lt;input type="checkbox" name="checkboxauswahl" value="a">
&lt;input type="checkbox" name="checkboxauswahl" value="b">
&lt;input type="checkbox" name="checkboxauswahl" value="c">&lt;/td>
&lt;/tr>
&lt;/table>

  &lt;/form>

&lt;/body>&lt;/html>
    </codesrc>
    </code>
    </absatz>

    <absatz>
    <text>
      <b>&lt;input type="text"</b> ... kennen wir schon. Es stellt eine
      Texteingabe zur Verfügung. Size gibt die Anzahl der sichtbaren
      Zeichen und damit die Länge des Feldes an.
    </text>
    <text>
      &lt;input type="password" ... Stellt eine spezielle Texteingabe
      zur Verfügung. Alle Eingaben werden durch ein Sternchen (*)
      angezeigt. Dies verhindert, daß jemand anderes das Passwort bei
      der Eingabe am Bildschirm mitlesen kann.
    </text>
    <text>
      &lt;input type="submit" ... Stellt einen Submit-Button zur
      Verfügung. Beim Anklicken wird das Formular (und sein Inhalt)
      abgeschickt - in unserem Fall an unsere Emailadresse. Kleine
      Falle: Das, was auf dem Button steht, wird im Attribut value
      angegeben.
    </text>
    <text>
      &lt;input type="reset" ... Stellt einen Button zur Verfügung, der
      beim Anklicken den Inhalt des Formulars in seinen Ausgangszustand
      zurückversetzt. Kleine Falle: Das, was auf dem Button steht, wird
      im Attribut value angegeben.
    </text>
    <text>
    &lt;input type="radio" ... Stellt die kleinen runden Auswahlbuttons
    zur Verfügung. Es kann immer nur einer gleichzeitig angewählt
    werden.
    Wichtig: alle zusammengehörige Buttons haben den
    gleichen namen! (Das Attribut name ist jeweils identisch). Der
    Webbrowser kümmert sicht darum, dass immer nur ein Button
    gleichzeitig ausgewählt sein kann.
    </text>
    <text>
    &lt;input type="checkbox" ... Stellt die kleinen viereckigen
    Auswahlbuttons zur Verfügung. Es können mehrer buttons gleichzeit
    aktiviert werden. Wichtig: alle zusammengehörige Buttons 
    haben auch hier den gleichen namen (wie beim Radio).
    </text>
    <text>
      Eine Vorauswahl bei Radio und Checkboxen kann man durch &lt;input
      type=... checked> erreichen. Bitte nicht irritieren lassen,
      checked wirkt allein durch seine Präsenz.
    </text>
    <text>
      Es gibt noch den type="image", den werden wir und für eine der Übungen
      aufheben.
    </text>
    </absatz>

    <absatz>
    <text>
      Hinweis: es ist korrekt, alle input-Tags haben kein End-Tag.
    </text>
    </absatz>

  </unterkapitel>

  <unterkapitel nummer="3">
    <titel>Sonstige Formularfelder</titel>

    <absatz>
    <code>
    <file src="6.3.html" text="BeispielCode" />
    <bild src="screenshot6.7.jpg" alt="" align="right" width="200" height=""/>
    <codesrc>
&lt;html>&lt;head>&lt;title>Sonstige Eingabevarianten&lt;/title>
&lt;style>
td {
    vertical-align: top;
    padding-bottom: 20pt;
}
&lt;/style>
&lt;/head>&lt;body>

&lt;h3>Sonstige Eingabevarianten...&lt;/h3>

&lt;form action="mailto:info@nekosoft.de" method="post">

&lt;table>
&lt;tr>
&lt;td colspan="2">&lt;textarea name="eingabefeld" rows="5"
cols="30">Eingabefeld&lt;/textarea>&lt;/td>
&lt;/tr>

&lt;tr>
&lt;td>Einmalauswahl Menue&lt;/td>
&lt;td>&lt;select name="menu1">
&lt;option value="1">Feld1&lt;/option>
&lt;option value="2">Feld2&lt;/option>
&lt;option value="3">Feld3&lt;/option>
&lt;option value="4">Feld4&lt;/option>
&lt;/select>&lt;/td>
&lt;/tr>

&lt;tr>
&lt;td>Mehrfachauswahl Menue&lt;/td>
&lt;td>&lt;select name="menu2" multiple size="3">
&lt;option value="1">Feld1&lt;/option>
&lt;option value="2">Feld2&lt;/option>
&lt;option value="3">Feld3&lt;/option>
&lt;option value="4">Feld4&lt;/option>&lt;/td>
&lt;/select>
&lt;/tr>


&lt;/table>

  &lt;/form>

&lt;/body>&lt;/html>
    </codesrc>
    </code>
    </absatz>


    <absatz>
    <text>
      &lt;textarea> und &lt;/textarea> liefern ein Fenster für einen
      Freitext. Man kann etwas Text bereits vorgeben, indem man ihn
      zwischen die beiden Tags schreibt. Die Höhe und Breite des
      Eingabefeldes wird durch die Attribute rows und cols bestimmt.
      Rows zeigt an, wie viele Zeilen das Feld haben soll und cols wie
      viele Zeichen pro Zeile.
    </text>
    <text>
      &lt;select> liefert ein Menue zum Auswählen von bereits angegebenen
      Möglichkeiten. Es gibt zwei verschiedene Typen:
    </text>
    <text>
      Einmalauswahl: hier benötigt man lediglich das Attribut name.
    </text>
    <text>
      Mehrfachauswahl: hier benötigt man zusätzlich die Attribute
      multipe (etwas ganz besonderes, da es allein durch seine Existenz
      etwas bewirkt) und mit size gibt man an, wie viele Felder sichtbar
      sein sollen.
    </text>
    <text>
      &lt;option> und &lt;/option> zeigen jeden einzelnen, anklickbaren
      Menuepunkt an. Im Attribut value schreibt man rein, was der
      Webbrowser als 'Inhalt' des Feldes an das Programm liefern soll,
      wenn der entsprechende Menuepunkt ausgewählt wird. Damit ist man
      unabhängig vom Text, der dann letztendlich als Benutzerführung
      dient.
    </text>
    <text>
      selected verwendet man um eine Vorauswahl anzugeben:
      &lt;option value="2" selected>Zweite Wahl&lt;/option>
    </text>
    </absatz>

  </unterkapitel>

  <beispiel nummer="1">
    <titel>Layout am Beispiel eines Feedback-Formulars</titel>

    <absatz>
    <text>
      Bis hier hin hatten wir viele neue Tags. Diese kann man bei Bedarf
      einfach nachschlagen. Der eigentlich spannende Teil kommt jetzt:
      Wie bekomme ich die Dinger hübsch angeordnet?
    </text>
    <text>
      Die Antwort ist klar: Mit HTML. Wir dürfen uns austoben und genau
      das werden wir jetzt anhand eines kleinen(!) Feedback-Formulars
      machen.
    </text>
    <text>
      Wir gehen Schrittweise vor, von der Idee bis zur fertigen
      Umsetzung.
    </text>
    </absatz>

    <absatz>
    <text>
      Bevor man sich an den Rechner setzt, ist es sehr ratsam sich mit
      Papier und Bleistift an einen ruhigen, gemuetlichen Ort zu setzen
      und aufzuschreiben, was man möchte. Hierbei kann man auch gleich
      das Design berücksichtigen.
    </text>
    <text>
      Erst danach geht es an den Rechner - die eigentliche
      Implementierung ist dann nur noch ein systematisches Umsetzen der
      Skizze und eventuelle kleine optische Korrekturen.
    </text>
    <text>
      Wir beginnen also mit einer Skizze und ein paar Stichpunkten, was
      wir uns wünschen.
    </text>
    </absatz>

    <absatz>
    <bild src="screenshot6.2.jpg" alt="" align="right" width="400" height=""/>
    <text>
      Um zu wissen, wer uns schreibt, muss er uns zumindest seinen Namen
      verraten. Angabe von Name. Eine Postadresse? Wollen wir die?
      Vorerst noch nicht.
    </text>
    <text>
      Um gerade bei ausländischen Namen nicht ins Fettnäpfchen zu
      treten, fragen wir am besten auch gleich, wie die Anrede sein
      soll. Alternativ könnte man auch nach dem Geschlecht
      (männl./weibl.) fragen.
    </text>
    <text>
      Wollen wir dem Benutzer eine EMail schreiben können? Dann brauchen
      wir die Angabe einer EMailadresse. Das kann man aber später noch
      ergänzen.
    </text>
    <text>
      Jetzt brauchen wir auf jeden Fall ein Feld, in dem der Benutzer
      uns seine Gedanken mitteilen kann.
    </text>
    <text>
      Zum Abschluß nicht den Abschicken-Button vergessen!
    </text>
    <text>
      Eine grobe Abschätzung wie groß die jeweiligen Eingabefelder sein
      könnten, schreiben wir in die freien Ecken. Die einzeiligen Felder
      schätzen wir auf 15 bis 20 Zeichen. Das große Textfeld könnte bei
      30-40 Zeichen Breite und um die 7 Zeilen Länge optisch ganz nett
      wirken.
    </text>
    </absatz>

    <absatz>
    <bild src="screenshot6.3.jpg" alt="" align="left" width="400" height=""/>
    <text>
      Jetzt noch ein Blick auf das optische Layout.
    </text>
    <text>
      Die Beschriftungen der Felder sind links und in sich bündig
      ausgerichtet. Ob Rechtsbündig oder linksbündig besser aussehen,
      können wir später am Computer ausprobieren.
    </text>
    <text>
      Der Text neben dem großen Eingabefeld liegt oben links daneben.
    </text>
    <text>
      Das ganze schreit nach Tabelle, diese zeichnen wir jetzt in einer
      anderen Farbe in unsere Skizze mit ein.
    </text>
    <text>
      Ob wir den blauen Rahmen behalten möchten? Können wir später,
      ausprobieren.
    </text>
    <text>
      Für die Schrift werden wir versuchen eine hübsche Schreibschrift
      zu finden (Muriel), als Alternativen wählen wir Coronet, Slogan und einfach
      cursive. Ich habe einfach eine Schrift im Bildbearbeitungsprogramm
      ausgewählt. Da ich hier eine Standardinstallation habe, stehen die
      Chancen ganz gut, dass der ein oder andere Surfer da draußen genau diese
      Schrift auch hat.
    </text>
    <text>
      Den blauen Unterstrich unter der Überschrift könnten wir mit einem
      Bildchen einlagern, welches wir in einem einfachen
      Bildbearbeitungsprogramm erstellen. Wir können auch erst einmal
      darauf verzichten.
    </text>
    <text>
    Muriel, script #00045b
    </text>
    </absatz>

    <absatz>
    <text>
      Jetzt setzen wir mit HTML die Struktur unserer Seite um, danach machen 
      wir mit CSS etwas Optik.
    </text>
    <code>
    <file src="6.4.html" text="BeispielCode" />
    <bild src="screenshot6.4.jpg" alt="" align="right" width="300" height=""/>
    <codesrc>
&lt;html>&lt;head>&lt;title>erstes Formular&lt;/title>
&lt;/head>&lt;body>

  &lt;h3>Feedback&lt;/h3>

  &lt;form action="mailto:info@nekosoft.de" method="post">

  &lt;table border="1">
  &lt;tr>
      &lt;td>Anrede&lt;/td>
      &lt;td>
          &lt;select name="anrede">
	      &lt;option value="Herr">Herr&lt;/option>
	      &lt;option value="Frau">Frau&lt;/option>
          &lt;/select>
      &lt;/td>
  &lt;/tr>

  &lt;tr>
      &lt;td>Vorname&lt;/td>
      &lt;td>&lt;input type="text" name="vname" size="15">&lt;/td>
  &lt;/tr>

  &lt;tr>
      &lt;td>Nachname&lt;/td>
      &lt;td>&lt;input type="text" name="nname" size="15">&lt;/td>
  &lt;/tr>

  &lt;tr>
      &lt;td>Nachricht&lt;/td>
      &lt;td>&lt;textarea name="msg" rows="7" cols="30">&lt;/textarea>&lt;/td>
  &lt;/tr>

  &lt;tr>
      &lt;td>&amp;nbsp;&lt;/td>
      &lt;td>&lt;input type="submit" value="Abschicken">&lt;/td>
  &lt;/tr>

  &lt;/table>

  &lt;/form>

&lt;/body>&lt;/html>
    </codesrc>
    </code>
    </absatz>

    <absatz>
    <text>
      Sehen wir uns das Ganze nocheinmal etwas genauer an.
    </text>
    <text>
      Wir beginnen mit einer Überschrift.
    </text>
    <text>
      Danach eröffnen wir unser Formular mit dem form-Tag. Wenn man eine
      Tabelle zum Layout eines Formulares verwendet, legt man das
      Formular immer um die Tabelle drumherum. Zur Not auch um mehrere
      Tabellen.
    </text>
    <text>
      Jetzt darf man sich nicht von der Tabelle irritieren lassen. Sie
      hat 5 Zeilen mit je zwei Spalten.
    </text>
    <text>
      Es empfiehlt sich zum Entwickeln immer einen border zu behalten
      (also border="1" oder 2 oder größer). Das erleichtert die
      Fehlersuche enorm, da man sieht, wo die Zellenränder sind (und
      damit wo man ein td oder tr vergessen hat).
    </text>
    <text>
      Wir steigen gleich am Anfang mit einem Auswahlmenue ein. Der name
      ist frei gewählt, aber der Einfachheit halber ist er 'sprechend',
      d.h. man kann am Namen ersehen, welche Funktion das Menue hat.
    </text>
    <text>
      Als nächstes kommen zwei fast identische Tabellenzeilen: die eine
      für den Vornamen, die andere für den Nachnamen. Beide
      Eingabefelder sind einfache Textzeilen.
    </text>
    <text>
      Jetzt noch das große Eingabefeld: &lt;textarea>
    </text>
    <text>
      Und zum Schluss mit &lt;input type="submit" value="Abschicken">
      unseren Button zum Abschicken des Formulars.
    </text>
    <text>
      Jetzt noch einen kurzen Blick auf das form-Tag oben: Wir schicken
      unser Formular an eine Emailadresse, als method verwenden wir auch
      hier wieder Post (Groß- Kleinschreibung ist egal). Dies sollte man
      immer verwenden, wenn man Daten per EMail verschicken möchte. Die
      Alternative wäre GET, sie eignet sich nur für kurze Formulare, die
      von einem echten Programm bearbeitet werden. Die Online
      Übungsumgebung wird hierzu eine Übung zur Verfügung stellen.
    </text>
    </absatz>

    <absatz>
    <text>
      Eigentlich war es das jetzt schon, wir können uns nun noch etwas
      der Optik hingeben. Dafür verwenden wir Stylesheets, die wir
      wieder im head-Bereich einlagern.
    </text>
    <text>
      Es empfiehlt sich an dieser Stelle das Kapitel CSS (Kapitel 5) noch einmal
      daneben zu legen und damit den folgenden Code genauer zu
      betrachten.
    </text>
    <code>
    <file src="6.5.html" text="BeispielCode" />
    <bild src="screenshot6.5.jpg" alt="" align="right" width="300" height=""/>
    <codesrc>
&lt;html>&lt;head>&lt;title>erstes Formular&lt;/title>

&lt;style>
body {
    color: #00045b;
    font-family: Muriel, Coronet, Slogan, cursive;
    font-size: 30pt;
    margin: 5px;
    border: 3px solid #00045b;
}

h3 { text-align: center; }

td {
    font-family: Muriel, Coronet, Slogan, cursive;
    font-size: 25pt;
    vertical-align: top;
    padding: 5pt 10pt 5pt 10pt;
}

input, select, textarea {
    border: 1px solid #00045b;
    background-color: #ffffff;
}


.right { text-align: right; }

.button {
    font-family: Muriel, Coronet, Slogan, cursive;
    font-size: 25pt;
    color: #00045b;
    background-color: #ffffff;
    border: 1px solid #00045b;
}

&lt;/style>

&lt;/head>&lt;body>

  &lt;h3>Feedback&lt;/h3>

  &lt;form action="mailto:info@nekosoft.de" method="post">

  &lt;table border="0" align="center">
  &lt;tr>
      &lt;td class="right">Anrede&lt;/td>
      &lt;td>
          &lt;select name="anrede">
	      &lt;option value="Herr">Herr&lt;/option>
	      &lt;option value="Frau">Frau&lt;/option>
          &lt;/select>
      &lt;/td>
  &lt;/tr>

  &lt;tr>
      &lt;td class="right">Vorname&lt;/td>
      &lt;td>&lt;input type="text" name="vname" size="15">&lt;/td>
  &lt;/tr>

  &lt;tr>
      &lt;td class="right">Nachname&lt;/td>
      &lt;td>&lt;input type="text" name="nname" size="15">&lt;/td>
  &lt;/tr>

  &lt;tr>
      &lt;td class="right">Nachricht&lt;/td>
      &lt;td>&lt;textarea name="msg" rows="7" cols="30">&lt;/textarea>&lt;/td>
  &lt;/tr>

  &lt;tr>
      &lt;td>&amp;nbsp;&lt;/td>
      &lt;td>&lt;input type="submit" value="Abschicken" class="button">&lt;/td>
  &lt;/tr>

  &lt;/table>


  &lt;/form>

&lt;/body>&lt;/html>
    </codesrc>
    </code>
    </absatz>

    <absatz>
    <text>
      body - interessant ist hier die Kombination aus margin und border.
      Sie sorgt für den blauen Rand in einigen Pixeln Abstand.
    </text>
    <text>
      td - bemerkenswert hier: padding. Man kann bei padding und margin
      im Uhrzeigersinn alle 4 Seiten angeben. Dabei wird mit der
      obersten angefangen. Gibt man nur einen Wert an, wird dieser für
      alle 4 möglichen Ränder verwendet.
    </text>
    <text>
      input, select, textarea - mit Komma getrennt, kann man
      angeben auf welche Tags oder class-Angaben die Angaben wirken
      sollen. Wir geben hier also allen input, select und textarea Tags
      eine weiße Hintergrundfarbe und einen dunkelblauen Rand.
    </text>
    <text>
      Zusätzlich verteilen wir noch ein paar Attribute:
    </text>
    <text>
      Jede linke Tabellenzelle bekommt ein class="right", damit der
      Inhalt rechtsbündig angezeigt wird.
    </text>
    <text>
      Unser Abschicken Button bekommt ein eigenes class="button"
      verpasst und das table-Tag erweitern wir um ein Attribut:
      align="center". Dieses ist zwar veraltet, aber die Alternative mit
      Stylesheets wird leider von vielen Webbrowsern noch nicht umgesetzt.
    </text>
    </absatz>

  </beispiel>

  <literatur>
    <titel>W3Consortium</titel>
    <kurzbeschreibung>
    Kapitel Formulare im Standard (engl. Original)
    </kurzbeschreibung>
    <url src="http://www.w3.org/TR/html401/interact/forms.html" />
  </literatur>



  <uebung nummer="1">
  <titel>Erweiterungen</titel>
  <aufgabe>
    <absatz>
      <text>
        Erweitern Sie unser Formular aus dem Beispiel um die Angabe
	einer EMailadresse.
      </text>
    </absatz>
  </aufgabe>
  <loesung>
  <absatz>
    <text>
      zwischen den Tabellenzeilen für Nachname und Nachricht, fügt man
      eine weitere Tabellenzeile ein, die die EMailadresse abfragt.
    </text>
    <code>
    <file src="6.7.html" text="BeispielCode" />
    <bild src="screenshot6.10.jpg" alt="" align="right" width="300" height=""/>
    <codesrc>
  ....
  &lt;tr>
      &lt;td class="right">Nachname&lt;/td>
      &lt;td>&lt;input type="text" name="nname"
               size="15">&lt;/td>
  &lt;/tr>

  &lt;tr>
      &lt;td class="right">EMail Adresse&lt;/td>
      &lt;td>&lt;input type="text" name="email"
               size="15">&lt;/td>
  &lt;/tr>

  &lt;tr>
      &lt;td class="right">Nachricht&lt;/td>
      &lt;td>&lt;textarea name="msg" rows="7"
             cols="30">&lt;/textarea>&lt;/td>
  &lt;/tr>
    ....
    </codesrc>
    </code>

  </absatz>
  </loesung>
  </uebung>

  <uebung nummer="2" ausgabe_in="handout">
  <titel>Sendebutton im Eigenbau</titel>
  <aufgabe>
    <absatz>
      <text>
        Die Gestaltungsmöglichkeiten beim Sendebutton sind naturgemäß
	etwas eingeschränkt. Deswegen gibt es eine Möglichkeit, ein Bild
	als Sendebutton zu definieren:
      </text>
      <text>
      &lt;input type="image" src="submitbutton.png">
      </text>
      <text>
        Der Webbrowser weiß anhand der Angabe image, daß es sich um
	ein Bild handelt, welches als submit fungiert. src gibt - wie
	beim img-Tag auch - an, wo das Bild zu finden ist, welches er
	als Button verwenden soll.
	Die anderen Attribute name und value sind auch hier zulässig. 
	Man benötigt sie bei kleinen Formularen allerdings selten.
      </text>
      <text>
        Tauschen Sie doch einmal den Button in unserem Beispiel aus
	diesem Kapitel gegen einen runden Knopf aus!
      </text>
    </absatz>
  </aufgabe>
  <loesung>
  <absatz>
    <code>
    <file src="6.6.html" text="BeispielCode" />
    <bild src="screenshot6.9.jpg" alt="" align="right" width="200" height=""/>
    <codesrc>
Original:
      &lt;td>&lt;input type="submit" 
                 value="Abschicken" 
		 class="button">&lt;/td>
Neu:
      &lt;td>&lt;input type="image" 
                 src="submitbutton.png" 
		 value="Abschicken"
                 class="button" 
		 style="border: 0px solid transparent;">&lt;/td>
    </codesrc>
    </code>

  </absatz>
  <absatz>
      <text>
        Unser style malt um alle Eingabefelder (am Tag input
	festgemacht) einen blauen Rahmen. Den
	unterbinden wir hier im Tag mit einer eigenen style-Angabe.
      </text>
  </absatz>
  </loesung>
  </uebung>

</kapitel>
</kurs>
