title image


Smiley Re: Suche elegantere Möglichkeit
> if ($ENV{CONTENT_LENGTH} eq '' and $ENV{QUERY_STRING}> eq '') {&pass;}du verwendest strict und warnings? Dann bekommst du bestimmt u.U. hier Warnungen, weil diese Variable evtl. nicht _definiert_ sind. Guck dir defined() an oder prüfe sie einfach auf logische "Wahrheit".Als nächstest solltest du dich unbedingt von der &funktion Schreibweise trennen: das ist kein Perl5, sondern Perl4. Schreib funktion()!> if ($in{mode} eq 'pass2') {&pass2;}> if ($in{mode} eq 'adduser') {&adduser;}wenn das ein CGI-Script ist, dann frage ich mich, woher %in kommt und warum kein CGI::param verwendet wird. Auch wundere ich mich, warum zwei sich logsich ausschliessende if-Ausdrücke nicht als elsif notiert werden.und schliesslich solltest du dir ein %hash anlegen, das als Werte sub-referenzen trägt und somit eine einfach,. erweiterbare Möglichkeit gibt, Funktionen per string zu identifizieren und auszuführen.Für ein größeres Programm habe ein hash derart angelegt: our %actions = ( 79 80 register => { 81 routine => \&fxF::CGI::Register::handler, 82 file => 'Register.pm', 83 }, 84 85...dazu wird je nach Aktion die angegeben Datei require()d und schliesslich die subref ausgeführt.NOX()"Handle so, dass die Maxime deines Willens jederzeit zugleich als Prinzip einer allgemeinen Gesetzgebung gelten könnte." Immanuel Kant     Richtig Fragen Stellen...     helpers.de
NOX()
Der Mensch ist, wozu er sich macht -- Jean-Paul Sartre

fruiture.de



geschrieben von

Login

E-Mail:
  

Passwort:
  

Beitrag anfügen

Symbol:
 
 
 
 
 
 
 
 
 
 
 
 
 

Überschrift: