218 PHP i MySQL dla każdego
218 PHP i MySQL dla każdego
Rysunek 7.12.
Widok formularza umożliwiającego wprowadzenie nazwy i hasła użytkownika
gfc Ędyqa włok PreeMi IcHtOn Maragfcia Ptrrot 'tj I - • ! p [ f
& Rozpocznij przygo)... O Aktualności
Wprowadź nazwę użytkownika i hasło:
Użytkownik: |
Hasło:
Wejdź |
Listing 7.24. Skrypt weryfikujący dane
<?php
function checkPass($user, $pass)
{
if(!$fd - @fopen("passwords.txt". ”r")) return 1;
Sresult = 2:
while (ifeof ($fd)){
$1 ine = trim(fgets($fd)):
$arr = explode(":". $1ine): if(count($arr) < 2) continue:
if($arr[0] != Suser) continue:
i f($arr[l] — $pass){
Sresult - 0:
break:
fclose(Sfd): return Sresult:
if(!isSet($_P0ST["hasło"]) || !isSet($_POST["user"])){ i nclude(1bad_1ogi n.html1): exit();
Sval - checkPass(S_POST["user"]. S_POST[”haslo"]): switch(Sval){
case 0 : include('indexl.html’):break: case 1 : 1nclude('error_server.html'):break: case 2 : i nclude('badjogi n.html’):break: default : includeCerror_server.html'):
Jeśli jednak oba klucze zawierają jakieś wartości, przekazywane są one do funkcji checkPass, która odpowiada za weryfikację danych. Wynik działania funkcji check-Pass jest następnie sprawdzany w instrukcji switch. W zależności od tego, jaka wartość została zwrócona, wczytywany jest jeden z plików HTML zawierający informację dla użytkownika. Możliwe są następujące sytuacje: