if ($T=="Potvrdit") {
UnSet($T);
SetCookie("WWW_User_Name",$Jmeno,"","/");
echo "";
}
?>
Autentizace uživatele
//----------------------------------------------------
function Uvod() {
echo "Přístup k některým stránkám je umožněn pouze autentizovaným uživatelům
";
} //Uvod()
//----------------------------------------------------
function ZobrazFormular($x,$y) {
?>
echo " ";
} //ZobrazFormular()
//----------------------------------------------------
?>
Autentizace
//if ($_SERVER["REQUEST_METHOD"] == "GET") { // tj. při 1.zavolání scriptu
$Odeslano = $_POST["Odeslano"];
$Jmeno = $_POST["Jmeno"];
echo "Odeslano = $Odeslano ";
echo "Jmeno = $Jmeno ";
if (! $Odeslano):
Uvod();
ZobrazFormular();
// promenne $Jmeno, $Heslo, $Pwd jsou hodnoty od uzivatele
// promenne $jmeno, $pwd jsou hodnoty ziskane ze souboru
else: // t.j. $Odeslano==true
if ($Jmeno==""):
echo "Jméno musí být vyplněno !";
ZobrazFormular();
exit;
endif; // $Jmeno==""
echo "Registrace uživatele $Jmeno . . .
";
$f = FOpen("/etc/squid/passwd","r");
if (!$f):?>
CHYBA - nelze otevřít soubor hesel!
Oznamte, prosím, tuto chybu správci sítě
exit;
endif; //(!$f)
$i=0;
$pwd="";
while ($radek = FGetS($f,96)) {
$i++;
if ($radek=="") continue;
if ($radek[0]=="#") continue;
if ($radek[0]=="[") continue;
$p = StrPos($radek,":");
$jmeno = SubStr($radek,0,$p);
if ($jmeno != $Jmeno) continue;
$pwd = SubStr($radek,$p+1,15);
$p = StrPos($pwd,":");
if ($p <= 1): // neni nastaveno heslo ?>
POZOR nemáte nastavené internetové heslo !
Autentizace nemůže být dokončena.
exit;
endif; // $p<=1
}
FClose($f);
if (! $pwd): ?>
CHYBA - Internetové konto neexistuje!
ZobrazFormular($Jmeno);
else: //$pwd ==true
if ($pwd[0]=="*") { $pwd = SubStr($pwd,1,13); // neni pristup mimo skolu
$Out = 0;
}
else { $pwd = Substr($pwd,0,13);
$Out = 1;
}
$Pwd = Crypt($Heslo,SubStr($pwd,0,2));
if ($pwd != $Pwd):
?>
CHYBA - neplatné heslo!
ZobrazFormular($Jmeno,"heslo");
exit;
else: // $pwd == $Pwd
?>
O.K.
if (!$Out) echo "(pozor - přístup mimo školu není povolen)"; ?>
Dokončete registraci stisknutím tlačítka "Potvrdit"
endif; // $pwd != $Pwd
endif; // !pwd
endif; // $Odeslano
?>