Du kan bruge sessions til at gemme oplysningen om login (de sker iøvrigt pr. default netop via cookies). Først lav et login-script som dette:
------------------
<?php
$brugernavn = "test";
$adgangskode = "test";
global $loginfejl;
global $loginOK;
session_start();
#Check om login-billedet allerede har været sendt
if (isset($HTTP_POST_VARS['user']) && isset($HTTP_POST_VARS['pass'])){
# Er brugernavn og adgangskode korrekt?
if ($brugernavn == $HTTP_POST_VARS['user'] && $adgangskode == $HTTP_POST_VARS['pass']) {
# Gem info om at login er OK som sessionsvariabel
$LoginOK=1;
session_register(LoginOK);
# Send brugeren til det ønskede sted
header("Location:
http://admin.php");
exit;
}
else
# Ellers husk at der er lavet et forvæges login-forsøg
$loginfejl=1;
}
# Ved forgæves forsøg: Fortæl brugeren, hvad der er galt
if ($loginfejl):?>
<H3><br>Ugyldigt brugernavn eller kodeord<br></H3>
<? endif;?>
<?
# Send loginbilledet
echo("<FORM action=\"login.php.php\" method=POST name=login.php>");
echo("<TABLE align=center>\n");
echo("<TH colspan=3 align=center>\n");
echo("Indtast brugernavn og kodeord\n");
echo("</TH>\n");
echo("<TR>\n");
if (isset($HTTP_POST_VARS['user']))
$user=$HTTP_POST_VARS['user'];
else
$user="";
echo("<TD>Brugernavn: </TD>\n");
echo("<TD><INPUT type=text size=10 name=user value=\"$user\"></TD>\n");
echo("</TR>\n");
echo("<TR>\n");
echo("<TD>Kodeord: </TD>\n");
echo("<TD><INPUT type=password size=10 name=pass></TD>\n");
echo("</TR>\n");
echo("<TR>\n");
echo("<TD colspan=1 align=right><INPUT type=submit value=\"Log på\"></TD>\n");
echo("</TR>\n");
echo("</TABLE>\n");
echo("</FORM>\n");
?>
--------------------
I alle andre scripts end login.php skal du nu starte med at checke, om brugeren er logget korrekt ind:
<?
session_start();
if(empty($LoginOK)) {
# Forsøg på at starte admin.php uden om login?
# Så tilintetgør et evt. eksisterende login
session_destroy();
# Og send brugeren til login-scriptet
header("Location: login.php");
exit;
}
#Nu ved du at brugeren er logget ind
?>
-------------------
M.v.h.
Allan