aber geht das auch mit der variable lenght?
my $username ist bereits schon definiert.
nein, nicht wenn du im Formular nichts eingibst.
Und ich möchte auf jedenfall kein ||'nix'; haben.
vielleicht so?
my $lenus = length($username)||'2';
my $lenpa = length($password)||'2';
Das Problem sind doch die Variabeln $username und $password und nicht deren Länge
my $cgi = new CGI;
if ((length $cgi->param($lenus) < 4) or (length $cgi->param($lenpa) < 4))
eben nicht. $lenus und $lenpa sind doch die Länge der Eingabe von user + pass
So ist es sinnvoll:
use CGI;
my $user = CGI::param('user') || '';
my $pwd = CGI::param('pass') || '';
if( length $user < 4 || length $user > XX)
Damit bekommst du keinen Fehler und keine Warnung.
Struppi.