Admin login - en lille fejl
HejJeg har lavet et admin script, det består af 2 filer,
når jeg prøver at logge af for jeg fejlen:
Warning: Cannot send session cache limiter - headers already sent (output started at /var/www/hotels/1go/kingsize/html/admin-again/functions.php:14) in /var/www/hotels/1go/kingsize/html/admin-again/admin.php on line 20
Admin.php indeholder:
<?
require( "functions.php" );
session_start();
if( isset( $action ) ):
if( $action == "logout" ):
session_unregister( "name" );
session_unregister( "passwd" );
session_destroy();
displayHeader( "Logout" );
echo "
<center><h4>Yeah, you're succesfully logged out !</h4></center>
</body></html>";
endif;
endif;
if( isset( $name ) && isset( $passwd ) ):
if( $name != $adminName || $passwd != $adminPasswd || $name == "" || $passwd == "" ):
error( "Nope, that's not it !" );
elseif( !session_is_registered( "name" ) && !session_is_registered( "passwd" )
&& $name == $adminName && $passwd == $adminPasswd ):
session_register( "name" );
session_register( "passwd" );
displayAdmin();
elseif( session_is_registered( "name" ) && session_is_registered( "passwd" )
&& $name == $adminName && $passwd == $adminPasswd ):
displayAdmin();
else:
error( "Hhmmm, something's wrong !" );
endif;
else:
if($action != "logout"):
displayForm();
endif;
endif;
function displayForm()
{
displayHeader( "Login" );
echo "
<center><h4>Login in</h4></center>
<div align=center>
<center>
<form method=post action=admin.php>
<table border=0 cellpadding=0 cellspacing=0 width=230>
<tr>
<td width=70 height=20>User:</td>
<td width=130 height=20><input type=text name=name size=20 maxlength=10></td>
</tr>
<tr>
<td width=70 height=20>Password:</td>
<td width=130 height=20><input type=password name=passwd size=20 maxlength=10></td>
</tr>
<tr>
<td width=70 height=20></td>
<td width=130 height=20><input type=submit value=\" Login \"></td>
</tr>
</table>
</form>
</center>
</div>
<p align=center><a href=java script:history.back()>Back</a></p>
</body></html>";
}
function displayAdmin()
{
displayHeader( "Admin area" );
echo "
<center><h4>Admin Area</h4></center>
<p align=center><a href=admin.php?action=logout>Logout</a></p>
</body></html>";
}
?>
functions.php indeholder:
<?
$adminName = "Webmaster";
$adminPasswd = "pass";
function displayHeader( $title )
{
global $fontFamily, $fontSize, $visitedColor, $hoverColor, $linkColor, $forumTitle;
echo "
<html>
<head>
<title>$title</title>
</head>
<body>
<center><h2>$forumTitle</h2></center>";
}
function error( $error )
{
global $forumTitle;
displayHeader( "Error Page" );
echo "
<center><b><Error Page></b></center>
<center><h4><font color=#FF0000>$error</font></h4></center>
<p align=center><a href=java script:history.back();>Back</a>
</body></html>";
exit;
}
?>
