Nu har jag fixat gästboken :e. Hur skall jag nu fixa så att jag själv kan logga in och kontrollera meddelanden(censur) och ta bort mha username och password :q
Admin konto
2 svar · 255 visningar · startad av GrAnD
guest.cgi har hand om gästboken. Den generera själva html sida. Därefter när jag skall in i admin läge så har jag skapat variabler i guest.cgi som jag kallar på i admin.cgi och därmed kommer jag åt de lagrade värdena.
Det jag behöver hjälp med är att få en inloggnings funktion att ta emot login och lösen och därefter skicka mig till admin.cgi om lösenordet och användarnamnet är rätt. Den kod som jag har förtillfället verkar inte funka. Jag tycker att det ser komplett ut.
#!/usr/local/bin/perl
use CGI qw/:standard/;
my $username = param(USERNAME);
my $password = param(PASSWORD);
open (FILE, "pwd.bak");
while(\<FILE\> )
{
@data = split(/\\n/);
foreach $entry (@data)
{
($name, $pass) = split(/,/, $entry);
if ($name eq "$username")
{
$userverified = 1;
if ($pass eq "$password")
{
$passwordverified = 1;
}
}
}
}
close(FILE);
if ($userverfied && $passwordverified)
{
&accessgranted;
}
elsif ($userverified && !$passwordverified)
{
&wrongpassword;
}
else
{
accessdenied;
}
sub accessgranted
{
print header;
print "<TITLE>LOGIN SUCCESFULL</TITLE>";
print "<FONT FACE=VERDANA SIZE=2>";
print "<STRONG>PERMISSION HAS BEEN GRANTED TO USER: $username.";
print "<BR>EDIT THE COMMENTS CAREFULLY</STRONG></FONT>";
print "<A HREF='cgi-bin/admin.cgi'>TO EDIT</A>";
}
sub wrongpassword
{
print header;
print "<TITLE>ACCESS DENIED</TITLE>";
print "<FONT FACE=VERDANA SIZE=2><STRONG>";
print "YOU HAVE ENTERED AN INVALID PASSWORD!<BR>";
print "ACCESS HAVE BEEN DENIED!</STRONG></FONT>";
exit;
}
sub accessdenied
{
print header;
print "<TITLE>ACCESS DENIED</TITLE>";
print "<FONT FACE=VERDANA SIZE=2><STRONG>";
print "ACCESS HAVE BEEN DENIED<BR>";
print "USER DONT EXIST!</STRONG></FONT>";
exit;
}