Witajcie serdecznie.
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)
{
<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
$zap=mysql_query("Select id from uzytkownik where login='$login'"); {
$blad .= "- Login zajęty, lub podano za krótki.<br>";
}
$zap=mysql_query("Select id from uzytkownik where email='$email'"); {
$blad .= "- E-mail już zarejestrowany, lub podano niepoprawny.<br>";
}
if(($pass!=$repass) || (strlen($pass))<4
) {
$blad .= "- Błąd przy podawaniu hasła.<br>";
}
{
$this->form(oczysc($login), oczysc($email));
}
else
echo 'Zarejestrowano poprawnie!'; // mysql_query -> dodawanie uzytkownika
}
}
?>
Oraz plik główny:
<?php
include_once('klasy.php');
$rejestruj = new Rejestr();
if($_SERVER['REQUEST_METHOD']=="POST")
{
if(isset($_POST['rejestr'])) {
$rejestruj->sprawdz($_POST['login'], $_POST['pass'], $_POST['repass'], $_POST['email']);
}
}
else
{
$rejestruj->form(oczysc($login), oczysc($email));
}
?>