<?
$user = $_POST["user"];
/* stocam in variabila $user nume de utilizator,
asta daca a fost trimis */
if(empty($user)):
/* verificam daca s-a trimis un nume de utilizator,
daca nu s-a trimis afisam formularul de logare */
?>
<html>
<head>
<title>Logheaza-te</title>
</head>
<body>
<form action="index.php" method="post">
Username: <input type="text" name="user" /><br/>
Password: <input type="text" name="pass" />
<input type="submit" />
</form>
</body>
</html>
<?
else:
/* daca s-a trimis un nume de utilizator
incepem procesarea datelor */
?>
<html>
<head>
<title>Procesare logare</title>
</head>
<body>
<?php
$baza=array('parola' => 'username');
/* stocam in variabila $baza un array cu
numele de utilizatori si parola, se separa prin
virgula */
$ok=0;
/* variabila ajutatoare $ok ne va ajuta sa
verificam daca totul a decurs corect */
$pass=$_POST['pass'];
/* in variabila $pass stocam parola trimisa */
while($username = current($baza))
{
/* deschidem un while care va parcurge fiecare element
al array-ului folosindu-ne de functiile current() si next() */
if($username == $_POST["user"]&&key($baza)==$_POST['pass']&&$ok!=1)
{
/* verificam daca numele de utilizator si parola corespund
cu cele din array si daca nu s-a procesat deja (vezi $ok!=1).
daca numele de utilizator si parola sunt corecte, atunci intra in if
si seteaza variabila $ok pe 1, semn ca s-au gasit date corecte */
$ok=1;
$mesaj = "Salut ".$_POST["user"].", esti logat";
/* stocam in variabila $mesaj un mesaj care va fi afisat pe
pagina de procesare. In cazul acesta va aparea:
"Salut username, esti logat" */
}
next($baza);
/* functia next() ne duce la urmatorul element al array-ului, ciclul
continua daca vor mai fi elemente in array */
}
if(!$ok)
$mesaj = "Nume de utilizator sau parola incorecta";
/* daca $ok a ramas pe 0, adica nu s-au gasit date, va afisa mesajul
de mai sus */
?>
<?=$mesaj?>
</body>
</html>
<? endif; ?>