Jako, że ciągle próbuję walczyć z programowaniem obiektowym w PHP i chęcią rozgryzienia tego tematu, dziś napisałem jakiś prosty skrypt a'la rejestracja.
Ogółem działa, przy prosiłbym doświadczonych użytkowników o krytykę i ewentualne poprawki - no chyba, że całość jest nie w ten deseń, jaki być powinno.
Z góry dziękuję.
Poniżej kody z dwóch plików, które napisałem:
Plik z klasą:
<?php function oczysc($zmienna) { return $zmienna; } ################################ KLASY class Rejestr { public function form($login, $email) { echo ' <form action="" method="post"> Login:<input type="text" name="login" value='.$login.'><br> Hasło:<input type="password" name="pass"><br> Potwierdź hasło:<input type="password" name="repass"><br> E-mail:<input type="password" name="email" value='.$email.'><br> <input type="submit" name="rejestr" value="Rejestruj"> </form> '; } public function sprawdz($login, $pass, $repass, $email) { $login=oczysc($login);// czy tego jakoś kurcze nie mozna $pass=oczysc($pass); // zautomatyzowac? :-) $repass=oczysc($repass); // jakis 'myk' ze wszystkie przekazane dane $email=oczysc($email); // filtrujemy przez oczysc { $blad .= "- Login zajęty, lub podano za krótki.<br>"; } { $blad .= "- E-mail już zarejestrowany, lub podano niepoprawny.<br>"; } { $blad .= "- Błąd przy podawaniu hasła.<br>"; } { $this->form(oczysc($login), oczysc($email)); } else // mysql_query -> dodawanie uzytkownika } } ?>
Oraz plik główny:
<?php include_once('klasy.php'); $rejestruj = new Rejestr(); if($_SERVER['REQUEST_METHOD']=="POST") { { $rejestruj->sprawdz($_POST['login'], $_POST['pass'], $_POST['repass'], $_POST['email']); } } else { $rejestruj->form(oczysc($login), oczysc($email)); } ?>