Hallo,
Ich hab das Script nun umgeschrieben wie folgt, nun wird aber nach dem Absenden offenbar immer die Subroutine no_name aufgerufen, auch wenn ein Name eingegeben wird (keine Fehlermeldung im Log). Ich hab das mit weiteren Subroutinen gelöst, elsif funktioniert ja dann mit exists und defined nicht mehr:
Solltest Du das Formular mit der HTTP-Methode POST abgesendet haben, so kann ich mir gut vorstellen, daß das nicht funktioniert.
Gemäss dem selfhtml-Artikel von Rolf Rost (Formularauswertung mit cgi-lib.pl sollte das keine Rolle spielen? Ich benutze POST, habs aber nun auch mit GET versucht, brachte aber keine Änderung.
Du solltest entweder CGI.pm _oder_ cgi-lib.pl verwenden, wobei ich Dir aus mehreren Gründen eher CGI.pm empfehlen würde.
Bis anhin hab ich cgi-lib.pl verwendet.
Beide Module zusammen eingesetzt kann, vor allem bei POST, nicht funktionieren, da beide versuchen die Daten von STDIN zu lesen, was allerdings nur bei einem erfolgreich sein kann. Das zweite Modul, in Deinem Falle also cgi-lib.pl und ReadParse hat das Nachsehen, wodurch auch keine Daten in dem Hash landen.
BTW. wußte ich gar nicht, daß ReadParse in der Wiese funktionieren kann, so wie Du es aufrufst. Ich kenne nur die Form
ReadParse(*benutzerdaten)
Werden Hashes nicht mit dem Prozentzeichen deklariert?
Woebei dann neben einem Hash auch ein Array und ein Skalar beschrieben wird.
Grüße
Klaus