Struppi: Formulare: Variablenübergabe

Beitrag lesen

Der minimale Code, der bei mir ebenfalls das nicht korrekte Verhalten zeigt.

Ich hab mal eine minimale Veränderung gemacht damit der Code überhaupt läuft und dann funktioniert alles:

  
#! /usr/bin/perl -w  
use strict;  
use CGI;  
use CGI::Carp qw(fatalsToBrowser);  
  
my $cgi = new CGI;  
my $LINK = $cgi->url;  
## Ausgabe der HTML-Seite starten ##################################  
print $cgi->header(),  
      $cgi->start_html(-title=>"Erweiterte Suche",  
                    -style=>{-src=>['stylesheets/default.css'],  
                       -media =>'screen'}),  
      $cgi->start_div({-id=>"container"}),  
                       $cgi->start_div({-id=>"liste"});  
  
### Auswertung der uebergebenden Parameter ########################  
if(defined $cgi->param('searchAdv')){  
  
    ## Testausgabe - Werte werden noch korrekt ausgegeben  
    my @Feldnamen = $cgi->param();  
  
   foreach my $Feld (@Feldnamen) {  
        print $cgi->b('Feldname: '), $Feld,  
                  $cgi->b(', Inhalt: '),  
                  $cgi->param($Feld), "<br>"; }  
  
    ## Aufruf der Funktion zum Auswerten der Daten  
    &advsearch;  
  
}else {  
  
    ## Anzeige der Suchseite  
    &advsearchstart;  
};  
  
### Subroutine zum Anzeigen der Suchmaske  
sub advsearchstart  
{  
    ## Ueberschrift  
    print $cgi->h1("Erweiterte Suche");  
    print $cgi->start_form( -method=>'POST',  
                            -action=>$LINK),  
          $cgi->checkbox( -name=>'dateCheck',  
                       -label=>'Datum'),  
          $cgi->br,  
          $cgi->hr,  
          $cgi->submit(-value=>'Suchen',  
                 -name=>'searchAdv'),  
          $cgi->end_form(),  
          $cgi->end_div();  
};  
  
sub advsearch {  
  
    ## Ueberschrift  
    print $cgi->h1("Suchergebnis");  
  
    ## Testausgabe - bleibt leer  
    my @Feldnamen = $cgi->param();  
  
    foreach my $Feld (@Feldnamen) {  
          print $cgi->b('Feldname: '),  
                  $Feld,  
                  $cgi->b(', Inhalt: '),  
                  $cgi->param($Feld), "<br>"; }  
  
    ## Ueberpruefen, ob etwas ausgewaehlt  
    if ($cgi->param()) {  
  
        print $cgi->p("ja");  
  
    }else{  
      ## Wenn nichts ausgewaehlt wurde  
      print $cgi->p("keine Auswahl getroffen");  
    }  
  
  
    # Ende der Seite  
    print   $cgi->end_div();  
  
};## Ende Funktion advsearch  
  
## Seite zumachen  
print   $cgi->div({-id=>"footer"}, "ENDE"),  
        $cgi->end_div(),  
        $cgi->end_html();  
  
##EOF##  
  

Ich bin nachwievor überzeugt dass dein Fehler woanders liegt und du uns ihn einfach nicht verraten willst.

Struppi.

--
Javascript ist toll (Perl auch!)