Juha: HTML-PERL Übermitteln von Daten

Hallo Miteinander

Gerne möchte ich per HTML in einem Menü Monat sowie Jahr bestimmen und dies nachher in einem PERL Programm bearbeiten, wie kann ich die Auswahl des Benutzers, z.B Februar 2003 meinem PERL-Programm übermitteln? Muss ich dies bei option value anhängen oder erst am schluss des Programmes, und was genau muss überhaupt noch dazuprogrammiert werden?

Folgend mein zur Zeit bearbeiteten HTML-Teil:
(Im Perlprogramm möchte ich vorerst einfach die Angaben ausgeben.)

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="button" value="Speichern" onClick="self.location.href='/cgi-bin/zeit/angaben.cgi?mode=abwesenheit'"></p>
</td></tr><tr><td></table>

Mit freundlichen Grüssen
Juha

  1. Hi,

    verstehe ich das richtig, das Du vom Benutzer eine Datumsangabe
    (nicht das aktuelle) empfangen möchtest ?!

    Wie auch immer, entweder Du bietest dem Benutzer die Möglichkeit
    über Options auszuwählen, oder das Datum kann direkt in
    ein Textfeld eingegeben werden. Wenn Du das aktuelle
    Datum haben willst würde ich das im Perl Skript generieren.

    Mit dem Skript kannst Du die Daten am einfachsten mit CGI.pm
    händeln.

    Gruß

    Jean-Luc

    Hallo Miteinander

    Gerne möchte ich per HTML in einem Menü Monat sowie Jahr bestimmen und dies nachher in einem PERL Programm bearbeiten, wie kann ich die Auswahl des Benutzers, z.B Februar 2003 meinem PERL-Programm übermitteln? Muss ich dies bei option value anhängen oder erst am schluss des Programmes, und was genau muss überhaupt noch dazuprogrammiert werden?

    Folgend mein zur Zeit bearbeiteten HTML-Teil:
    (Im Perlprogramm möchte ich vorerst einfach die Angaben ausgeben.)

    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="button" value="Speichern" onClick="self.location.href='/cgi-bin/zeit/angaben.cgi?mode=abwesenheit'"></p>
    </td></tr><tr><td></table>

    Mit freundlichen Grüssen
    Juha

  2. Hallo Miteinander

    Gerne möchte ich per HTML in einem Menü Monat sowie Jahr bestimmen und dies nachher in einem PERL Programm bearbeiten, wie kann ich die Auswahl des Benutzers, z.B Februar 2003 meinem PERL-Programm übermitteln? Muss ich dies bei option value anhängen oder erst am schluss des Programmes, und was genau muss überhaupt noch dazuprogrammiert werden?

    Folgend mein zur Zeit bearbeiteten HTML-Teil:
    (Im Perlprogramm möchte ich vorerst einfach die Angaben ausgeben.)

    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="button" value="Speichern" onClick="self.location.href='/cgi-bin/zeit/angaben.cgi?mode=abwesenheit'"></p>
    </td></tr><tr><td></table>

    Mit freundlichen Grüssen
    Juha

    Hallo,
    wenn du im <form>-tag method=post schreibst, dann steht dir im perl-script im vordefinierten Hash %ENV das Element $ENV{'Query_String'} zur Verfügung.
    In diesem Element ist der Teil der übermittelten URL enthalten, welcher nach dem Fragezeichen steht.
    bsp:
    falls jemand februar 2003 auswählt, enthält $ENV{'Query_String}folgenden String: "monatende=februar&jahrende=2003" diesen String kannst du dann am besten per CGI.pm auswerten (z.b. in einen HASH speichern oder dergleichen).
    Gruss
    gant

  3. Hallo,

    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="button" value="Speichern" onClick="self.location.href='/cgi-bin/zeit/angaben.cgi?mode=abwesenheit'"></p>
    </td></tr><tr><td></table>

    ----------------------
    angaben.cgi:
    ----------------------

    #!/usr/bin/perl -w

    use CGI; #Das CGI Modul erledigt alle Aufgaben, wie dekodieren usw..
    use strict;

    my $query = new CGI; #Neues CGI Objekt anlegen
    my $monat = $query->param('monatende'); #Hier wird der Wert von Monatsende der Variable $monat zugewiesen.
    my $jahr = $query->param('jahr'); # mit Jahr genauso
    print $query->header; # Header ausgeben

    print "$monat\n";
    print "$jahr\n";   # über STDOUT ausgeben

    1. Hoppla Fehler, es muss natürlich so heissen.
      my $jahr = $query->param('jahrende');