394 PHP i MySQL dla każdego
else if($val ~ BAD_USER_PASS_LENGTH){ echoCHasło musi mieć od 6 do 40 znaków."):
else if($val — USER_NAME_ALREADY_EXISTS){ echoC"Użytkownik $_POST[nazwa] jest już zarejestrowany."):
else if($val — EMPTY_FIELDS){ echo{"Proszę wypełnić wszystkie pola formularza."):
el se{
echoCBląd serwera. Rejestracja nie powiodła się.“):
}
</h2>
</body>
</html>
Wykonywanie skryptu rozpoczyna się od wywołania funkcji session_start, a następnie sprawdzenia, czy istnieje zmienna sesji o nazwie załogowany. Jeśli taka zmienna istniałaby, oznaczałoby to, że skrypt rejestracyjny został przypadkiem wywołany przez już załogowanego użytkownika, co nie powinno mieć miejsca. W takiej sytuacji następuje zatem przekierowanie do strony głównej serwisu — main.php.
Jeśli jednak skrypt został wywołany przez niezalogowanego użytkownika, jest sprawdzane, czy na pewno zostały przekazane wszystkie pola formularza: nazwa, hasło, imię, nazwisko, email. Gdyby któregoś parametru brakowało, oznaczałoby to, że skrypt został wywołany w inny sposób, niż przez kliknięcie przycisku Rejestruj formularza rejestracyjnego. W takiej sytuacji jest wczytywany i wysyłany do przeglądarki kod formularza rejestracyjnego zawarty w pliku new_user.html.
Jeśli jednak w tablicy $_P0ST znajdują się wszystkie dane przesłane z formularza, są one przypisywane zmiennym pomocniczym i przekazywane funkcji rejestruj. Wartość zwrócona przez tę funkcję, oznaczająca status operacji rejestrowania użytkownika, jest przypisywana zmiennej vał. Złożona instrukcja warunkowa if.. .ełse.. .if bada następnie stan tej zmiennej i wysyła do przeglądarki odpowiedni komunikat. W przypadku gdy wartością zwróconą przez funkcję rejestruj jest OK, dodatkowo wysyłany jest odnośnik do ekranu logowania (rysunek 14.6).
Informacja |
E& Edycja Widok Przeje ZakJadd Narzędzia PoTicę |
,jsi*i © |
o poprawnym |
^3 - L.,."' ■ |§? -feji $jł | L) httmJ/tocahost/new.usar.php © Idź |£1 | |
procesu |
ftozpoczrtj przygód... S.J AttualnoCd u ****** | |
rejestracji |
Rejestracja poprawna. Możesz się zalogować. |