HTML-Perl Übergabe
Juha
- html
Hallo Zusammen
In meinem HTML-Formular kommen Ckeck und radio Buttons vor, als auch normale Eingabefelder, jetzt möchte ich dieses Formular in meinem Perlprogramm auslesen. Bei einem normalen Formular konnte ich dies ohne grosse Mühe über einen $in(bla) wert übermitteln, wie kann ich das hier tun?
Unterhalb der HTML-Code..
Grüsse Juha
<html>
<head>
</head>
<body bgcolor="#E7F7FF"><font face="arial">
<b>Gruppe</b>
<form method=post action="/cgi-bin/zeit.cgi">
<br><input type="checkbox" name="gruppe" value="ZH Gruppe 1" checked> ZH Gruppe 1
<br><input type="checkbox" name="gruppe" value="ZH Gruppe 2" checked> ZH Gruppe 2
<br><input type="checkbox" name="gruppe" value="WI Gruppe 1" checked> WI Gruppe 1
<br><input type="checkbox" name="gruppe" value="WI Gruppe 2" checked> WI Gruppe 2
<br><input type="checkbox" name="gruppe" value="WI Gruppe GI" checked> WI Gruppe GI
<br><input type="checkbox" name="gruppe" value="einzelneperson" checked> Einzelne Person /
Vorname: <input type="text" name="vorname" size="15">
Nachname: <input type="text" name="nachname" size="15">
<b><br><br><br>Fernbleiben durch</b><br>
<br><input type="radio" name="absenz" value="Freitag" checked> Freitag
<br><input type="radio" name="absenz" value="Kompensation" checked> Kompensation
<br><input type="radio" name="absenz" value="Schule" checked> Schule
<br><input type="radio" name="absenz" value="Ferien" checked> Ferien
<br><br><br>
<br>
Tag: <select name="taganfang" size="1">
<option value="eins"> 1.
<option value="zwei"> 2.
<option value="drei"> 3.
<option value="vier"> 4.
<option value="fuenf"> 5.
<option value="sechs"> 6.
<option value="sieben"> 7.
<option value="acht"> 8.
<option value="neun"> 9.
<option value="zehn"> 10.
<option value="elf"> 11.
<option value="zwoelf"> 12.
<option value="dreizehn"> 13.
<option value="vierzehn"> 14.
<option value="fuenfzehn"> 15.
<option value="sechszehn"> 16.
<option value="siebzehn"> 17.
<option value="achtzehn"> 18.
<option value="neunzehn"> 19.
<option value="zwanzig"> 20.
<option value="einundzwanzig"> 21.
<option value="zweiundzwanzig"> 22.
<option value="dreiundzwanzig"> 23.
<option value="vierundzwanzig"> 24.
<option value="fuenfundzwanzig"> 25.
<option value="sechsundzwanzig"> 26.
<option value="siebenundzwanzig"> 27.
<option value="achtundzwanzig"> 28.
<option value="neunundzwanzig"> 29.
<option value="dreissig"> 30.
<option value="einunddreissig"> 31.
</select>
Monat: <select name="monatanfang" size="1">
<option value="januar"> Januar
<option value="februar"> Februar
<option value="maerz"> März
<option value="april"> April
<option value="mai"> Mai
<option value="juni"> Juni
<option value="juli"> Juli
<option value="august"> August
<option value="september"> September
<option value="oktober"> Oktober
<option value="november"> November
<option value="dezember"> Dezember
</select>
Jahr: <select name="jahranfang" size="1">
<option value="nullzwei"> 2002
<option value="nulldrei"> 2003
<option value="nullvier"> 2004
<option value="nullfuenf"> 2005
</select>
<br>
<br>
<b>bis</b>
<br>
<br>
Tag: <select name="tagende" size="1">
<option value="eins"> 1.
<option value="zwei"> 2.
<option value="drei"> 3.
<option value="vier"> 4.
<option value="fuenf"> 5.
<option value="sechs"> 6.
<option value="sieben"> 7.
<option value="acht"> 8.
<option value="neun"> 9.
<option value="zehn"> 10.
<option value="elf"> 11.
<option value="zwoelf"> 12.
<option value="dreizehn"> 13.
<option value="vierzehn"> 14.
<option value="fuenfzehn"> 15.
<option value="sechszehn"> 16.
<option value="siebzehn"> 17.
<option value="achtzehn"> 18.
<option value="neunzehn"> 19.
<option value="zwanzig"> 20.
<option value="einundzwanzig"> 21.
<option value="zweiundzwanzig"> 22.
<option value="dreiundzwanzig"> 23.
<option value="vierundzwanzig"> 24.
<option value="fuenfundzwanzig"> 25.
<option value="sechsundzwanzig"> 26.
<option value="siebenundzwanzig"> 27.
<option value="achtundzwanzig"> 28.
<option value="neunundzwanzig"> 29.
<option value="dreissig"> 30.
<option value="einunddreissig"> 31.
</select>
Monat: <select name="monatende" size="1">
<option value="januar"> Januar
<option value="februar"> Februar
<option value="maerz"> März
<option value="april"> April
<option value="mai"> Mai
<option value="juni"> Juni
<option value="juli"> Juli
<option value="august"> August
<option value="september"> September
<option value="oktober"> Oktober
<option value="november"> November
<option value="dezember"> Dezember
</select>
Jahr: <select name="jahrende" size="1">
<option value="nullzwei"> 2002
<option value="nulldrei"> 2003
<option value="nullvier"> 2004
<option value="nullfuenf"> 2005
</select>
<table border=0 bgcolor="#E7F7FF" width=74% height=50>
<tr><td><p align=right><input type="submit" value="Speichern" onClick="self.location.href='/cgi-bin/zeit.cgi?mode=abwesenheit"></p>
</td></tr><tr><td></table>
</form>
</font>
</body>
</html>
Hallo,
In meinem HTML-Formular kommen Ckeck und radio Buttons vor, als auch normale Eingabefelder, jetzt möchte ich dieses Formular in meinem Perlprogramm auslesen. Bei einem normalen Formular konnte ich dies ohne grosse Mühe über einen $in(bla) wert übermitteln, wie kann ich das hier tun?
Die Werte von Checkboxen bzw. Radiobuttons kannst Du genau so auslesen, wie Du es auch mit 'normalen' Eingabefeldern machen kannst.
Ein CGI-Programm kann nicht mehr erkennen ob in HTML
<input type="text" name="WASAUCHIMMER" value="Hallo Du">
oder
<input type="checkbox" name="WASAUCHIMMER" value="Hallo Du" checked>
verwendet wurde.
Einen Unterschied gibts zwar schon, der ist aber eigentlich meist nicht von BElang. Wenn eine Checkbox beim Versenden nicht 'ge-checked' ist, dann wird der Paramater nicht übertragen, bei leeren Textfeldern wird der Parameter zwar übetragen, ist aber eben leer. Das gleiche gilt auch im übertragenen Sinn für Radiobuttons.
Was dieses $in{bla} angeht, weiß ich allerdings nicht, wie dieses Hash von Dir gefüllt wird. Sollte es irgendein selbstgeschriebener CGI-MethodenauswertunddannParameterstringszusammenklaunundirgendwieauswert-Code sein, so rate ich Dir, Dich mit den Vorzügen des Moduls CGI.pm zu befassen. Näheres findest Dun weiter unten unter den Literaturhinweisen.
Unterhalb der HTML-Code..
Hier eine Anmerkung: Bei Radiobuttons solltest Du nur einen der Buttons in einer Buttongroup (gleicher Name) vorselektieren, sonst kommt nur Müll raus.
Literaturhinweise:-)
http://selfhtml.teamone.de/html/formulare/auswahl.htm
http://selfhtml.teamone.de/cgiperl/intro/formularverarbeitung.htm
und vor allem (CGI.pm):
http://selfhtml.teamone.de/cgiperl/module/cgi.htm
und dort
http://selfhtml.teamone.de/cgiperl/module/cgi.htm#formularverarbeitung
Grüße
Klaus