Da ich die Geduld und Hilfsbereitschaft von Claus nicht über Gebühr strapazieren möchte, habe ich einen neuen Versuch gestartet (allerdings mit einer anderen Anwendung, ich hoffe du nimmst es mir nicht übel, Claus)
Das Template sieht nun folgendermaßen aus:
($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst)= gmtime(time);
my $ziffer = $_REMOTE_ADDR;
$ziffer =~ s/[.]| //g;
$ziffkurz=substr($ziffer,0,5);
$sid_aktuell = (1000000*$year)+(10000*$mon)+(100*$mday)+(4*$hour).($ziffkurz);
out <<EOF;
<center>
<table border="0" cellpadding="0" cellspacing="0" width="100" bgcolor="#ffffff">
<tr>
<td width="1" rowspan="9" bgcolor="#000000"></td>
<td valign="top" bgcolor="#000000" width="100" rowspan="2">
<!-- Login-Tabelle -->
EOF
if($cmd eq "logout") ## Erneut Login-Maske falls Log Out erfolgt
{
mod "Nickname==!$namerein", ["nutzer_sid", "0"], "register"; ## sessionid des Nutzers wird auf 0 gesetzt
$msg="<font face='Verdana' color='ffffff' size='1'>Wieder neu einloggen?</font>";
$Nickname="";
$namerein="";
}elsif ($cmd eq "login")
{
if($namerein ne "" && pwrein ne "" && $sid eq "")
{
get "Nickname==!$namerein range=0,1","register";
if($nutzer_passwort ne "" && $nutzer_passwort eq $pwrein && $Nickname eq $namerein)
{
mod "Nickname==$namerein", ["nutzer_sid", "$sid_aktuell"], "register"; ## sessionid wird in die Nutzerdatenbank eingetragen
$sid=$sid_aktuell;
}else
{
out "<font face='arial,helvetica' color='#ffffff' size='1'>Fehler beim Login!</font>";
get "Nickname==!$namerein range=0,1","register";
if($Nickname eq $namerein)
{
mod "Nickname==$namerein", ["nutzer_sid", "0"], "register"; ## sessionid wird auf 0 gesetzt
}
$namerein="";
$login_name="";
}
}
}
if($namerein ne "" && $sid ne "")
out "<!-- test, ob aktuelle session-id noch gültig ist -->";
get "Nickname==$namerein range=0,1", "register";
$sidkurz = substr($nutzer_sid,0,9);
$sid_max = ($sidkurz+10).($ziffkurz);
if($sid eq $nutzer_sid && $sid_aktuell <= $sid_max)
{
out "<!-- session-id ist gültig - session-id wird aktualisiert -->";
mod "Nickname==!$namerein range=0,1", ["nutzer_sid", $sid_aktuell], "register";
$sid=$sid_aktuell;
out <<EOF;
<table border="0" cellpadding="0" cellspacing="2" width="150">
<form action="baseportal.pl?htx=$htx&cmd=logout" method=post enctype=multipart/form-data target="_parent">
<input type=hidden name="htx=" value="$htx">
<input type="hidden" name="namerein=" value="$namerein">
<tr>
<td width="12"></td>
<td width="48"></td>
<td width="90"><input type="submit" value="LogOut" style="width:70" width="35"></td>
</tr>
<tr>
<td colspan="3"></td>
</tr>
<tr>
<td width="12"></td>
<td valign="top" colspan="2"> <font size="2" color="#2CB140">Welcome $namerein !</font></td>
</tr>
</form>
</table>
EOF
}else ## Session-Id abgelaufen - wieder LogIn-Maske
{
$msg="Session-Id abgelaufen!!!";
$login_name="$namerein";
$namerein="";
}
}
if($namerein eq "") ## Login-Maske falls nicht angemeldet
{
&form;
}
sub form
{
out <<EOF;
<table border="0" cellpadding="0" cellspacing="2" width="150">
<form action="baseportal.pl?htx=$htx&cmd=login" method="post" enctype="multipart/form-data">
<input type=hidden name="htx=" value="$htx"><input type=hidden name="cmd=" value="login">
<tr>
<td width="12"></td>
<td width="48">Nick:</span></td>
<td width="90"><input type="text" name="namerein=" size="4" style="width:70" width="35" value=""></td>
</tr>
<tr>
<td width="12"></td>
<td width="48">Pass:</td>
<td width="90"><input type="password" name="pwrein=" size="4" style="width:70"></td>
</tr>
<tr>
<td width="12">
</td>
<td align="center" width="45">
</td>
<td width="90"><input type="submit" value="Login" style="width:70" width="35"></td>
</tr>
</form>
</table>
EOF
}
out "</tr></table>";
</perl>
<html><head><title> GUA Pilots Database</title>
body { font-family:Verdana,sans-serif; background-color:#000000; font-size:10px; color:#CCCCCC; margin:30; width:100%;background-image:-; }
.Titel { font-size:40px; color:#80FFFF; font-family:Verdana; font-weight:bold; }
.Text { font-size:10px; color:#CCCCCC; font-family:Verdana; }
.Einleitung { font-size:12px; color:#CCCCCC; font-family:Verdana; }
.headback { background-color:#005555; }
.databack { background-color:#003333; border:1px; font-size:10pt; }
.textback { background-color:#000000; }
a:link { text-decoration:none; color:#00B0B0; }
a:visited { text-decoration:none; color:#00B0B0; }
a:active { text-decoration:none; color:#80FFFF; }
a:hover { text-decoration:none; color:#80FFFF; }
</head>
<body><TABLE height=50 width="100%">
<TR>
<TD>
<TD vAlign=top align=left><SPAN class=Bild></SPAN></TD>
<TD align=right><SPAN class=Titel> <FONT size=6>GUA Pilots Database</FONT></SPAN></TD>
<TD width="10%"> </TD></TR></TABLE>
<TABLE cellSpacing=0 cellPadding=0 width="100%" border=0>
<TR>
<TD vAlign=top align=left width="100%">
<TABLE cellSpacing=0 cellPadding=0 width="100%" align=left border=0 valign="top">
<TR colspan="6">
<TD vAlign=top align=middle width="100%">
<TABLE cellSpacing=2 cellPadding=0 width="100%" border=0>
<TR>
<TD class=headback>
<TABLE width="100%" align=center valign="top">
<TR>
<TD class=databack vAlign=top align=middle width="20%"><A href="index.html">Link1</A></TD>
<TD class=databack vAlign=top align=middle width="20%"><A href="index.html">Link2</A></TD>
<TD class=databack vAlign=top align=middle width="20%"><A href="index.html">Link3</A></TD>
<TD class=databack vAlign=top align=middle width="20%"><A href="index.html">Link4</A></TD>
<TD class=databack vAlign=top align=middle width="20%"><A href="index.html">Link5</A></TD></TR></TABLE></TD></TR></TABLE>
<P> </P></TD></TR>
<TR colspan="5">
<TD vAlign=top align=left width="100%">
<P align=left> <U><STRONG><FONT color=#48b6b6>Welcome to GUA's Pilots Database</FONT></STRONG></U></P>
<P><U><FONT color=#249148></FONT></U> </P></TD></TR>
<TR colspan="5">
<TD vAlign=top align=left width="100%">
<TABLE cellSpacing=0 cellPadding=0 width="100%" align=left border=0 valign="top">
<TR>
<TD vAlign=top align=left width=15> </TD>
<TD vAlign=top align=left width="25%" colSpan=2>
<P align=center><FONT size=3><FONT style="BACKGROUND-COLOR: #003333"><FONT color=#24916d><IMG style="WIDTH: 310px; HEIGHT: 300px" src="http://img127.imageshack.us/img127/5692/guaa0hj.jpg" border=1></FONT></FONT></FONT></P></TD>
<TD vAlign=top align=left width="1%">
<P> </P></TD>
<TD vAlign=top align=left width="74%">
<P align=center><FONT size=3><FONT style="BACKGROUND-COLOR: #003333"><FONT color=#24916d></FONT></FONT></FONT> </P></TD></TR></TABLE></TD></TR></TABLE></TD></TR></TABLE> <BR>
<TABLE class=headback style="WIDTH: 1179px; HEIGHT: 34px" borderColor=#ffffff cellSpacing=0 cellPadding=4 width=1179 border=2>
<TR>
<TD class=databack align=middle>
<P><SPAN class=Text name="EMail"><FONT size=1>If you notice any incorrect data of have updated information about a pilots data please contact Aiden or Jagman </FONT></SPAN></P></TD></TR></TABLE></body>
</html>
Link: http://gua-world.de/cgi-bin/baseportal.pl?htx=/gua-world.de/GUA_World/GUA_Pilots_Database/login
Wenn mir nun noch jemand erkären könnte, wo und wie ich das "do_all" ins PW-Template einbette, wäre mir ein großes Stück weitergeholfen.
Dank und Gruss,
Sirius