<html>
<body bgcolor="#FFFFFF">
<perl>
sub AnzeigeFormular1
{
out <<EOF;
<form action="http://baseportal.de/cgi-bin/baseportal.pl?htx=/DeinPfad" method=post enctype="multipart/form-data">
<input type=hidden name="htx=" value="/DeinPfad">
<input type=hidden name="aktion=" value="NamenChecken">
Gib Deinen gewünschten Namen ein:
<br><input type=text name="nickname=" size=20>
<br><input type=submit value="Prüfen">
</form>
EOF
}
sub NamenChecken
{
$fehlermeldung="";
get "nickname==$_[0]","UserDB";
$fehlermeldung="Der Nickname ist bereits vergeben." if ($_amount>0);
return $fehlermeldung;
}
sub AnzeigeFormular2
{
out <<EOF;
<form action="http://baseportal.de/cgi-bin/baseportal.pl?htx=/DeinPfad" method=post enctype="multipart/form-data">
<input type=hidden name="htx=" value="/DeinPfad">
<input type=hidden name="nickname=" value="$_[0]">
<input type=hidden name="aktion=" value="Registrieren">
Hallo, $_[0]. Der Nickname ist noch frei.
<br>Wähle dein Passwort:
<br><input type=password name="passwort=";
<br>Passwort bestätigen:
<br><input type=password name="passwort2=";
<br>Deine E-Mail-Adresse:
<br><input type=password name="email=";
<br><input type=submit value="Registrieren">
</form>
EOF
}
sub WeitereDatenChecken
{
$fehlermeldung="";
$fehlermeldung="Passwort fehlt.<br>" if ($_[0] eq "");
$fehlermeldung="Passwort bestätigen!<br>" if ($_[1] eq "");
$fehlermeldung="Passwortbestätigung fehlgeschlagen.<br>" if (($_[0] ne "") && ($_[1] ne "") && ($_[0] ne $_[1]));
$fehlermeldung="E-Mail fehlt.<br>" if ($_[2] eq "");
return $fehlermeldung;
}
sub UserSpeichern
{
put ["nickname", $_[0], "passwort", $_[1], "email", $_[2]],"UserDB";
}
######### Hauptprogramm
if ($_get{aktion} eq "NamenChecken")
{
if (&NamenChecken($_get{nickname}) eq "")
{
#wenn das Ergebnis der Pruefroutine leer ist, also kein Fehler, dann Formular 2 anzeigen
&AnzeigeFormular2($_get{nickname});
}
else
{
#wenn Nickname schon vergeben, Fehlermeldung anzeigen und Formular 1 nochmals ausgeben
out $fehlermeldung;
&AnzeigeFormular1;
}
}
elsif ($_get{aktion} eq "Registrieren")
{
if (&WeitereDatenChecken($_get{passwort},$_get{passwort2},$_get{email}) eq "")
{
#wenn kein Fehler aufgetreten ist, User speichern
&UserSpeichern($_get{nickname},$_get{passwort},$_get{email});
}
else
{
#sonst Fehlermeldung anzeigen und Formular 2 nochmals ausgeben
out $fehlermeldung;
&AnzeigeFormular2($_get{nickname});
}
}
else
{
&AnzeigeFormular1;
}
</perl>
</body>
</html>