Klaus Mock: (PERL) Fehlermeldung im Errolog, aber wieso ?

Beitrag lesen

Hallo,

Ich habe zur Probe mal main() so aufgerufen &main;, aber die Meldung kommt trotzdem. Ich glaube es ist so wie Cheatah sagt.

Ich hab's gerade mal bei mir ausprobiert. Wenn Du, so wie es ist, mit main() aufruftst, dann kommt eine Warnung, wenn Du allerdings an dieser Stelle main('','','') verwendest, dann nicht. Eine Warung kommt übrigens auch, wenn nicht alle Felder ausgefüllt werden, dann allerdfings in der Funktion valid(). Du solltest berücksichtigen, daß $query->param('name') undef liefert, sollte der Parameter nicht übergeben worden sein, wie es z.B. in diesem Falle bei den Radiobuttons sein kann.

Hmmmm ja da müsste ich ja $error erst wieder zerlegen, und dann die verschiedenen Value's des Formulars mit den Werten füllen, aber ich werde mir das Konstrukt merken, so wie es ist.

Ich hätte mir den Code von valid() doch noch genauer ansehen sollen. Da werden $forumname,$email und $auswahl ja doch verändert. Dann sind Referenzen natürlich besser.
Allerdings bin ich der Meinung, daß man Fehlermeldungen und Daten nicht mixen sollte. Warum führst Du nicht eine Fehlertextvariable mit, in der Du alle Fehler, die auftreten, sammelst um sie dann mit auszugeben.
Wenn Du die Eingabewerte mit einer Fehlermeldung überschreibst, dann hat der Besuche ja keien Chance, seine Daten einfach zu korrigieren, sondern muß alles wieder neu eingeben. Wenn das nicht lästig ist.

Grüße
  Klaus