Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Obiektowy
Forum PHP.pl > Forum > Przedszkole
MateuszS
Witam, raczkuje w temacie programowania obiektowego. Ale postanowilem sprobowac i napisalem mini system rejestracji, nic specjalnego, wyprobowanie kilku funkcji i insert do bazy.
Pytanie takie. Czy jest sens takie cos pisac? funkcjami zrobilbym to samo i zajelo by mi to mniej miejsca. Czym sie kierowac tworzac klasy i obiekty?

  1. <form action="index.php" method="POST">
  2. Login <input type="text" name="login" /><br />
  3. Haslo <input type="password" name="haslo" /><input type="submit" name="rej" value="rejestruj" />
  4. <?php
  5. if(isset($_POST['rej'])) {
  6.  
  7. class polacz_mysql {
  8. function baza() {
  9. $this->host='localhost';
  10. $this->login='root';
  11. $this->haslo='';
  12. $this->baza='twojeoceny';
  13. $this->lacz=mysql_connect($this->host,$this->login,$this->haslo);
  14. mysql_select_db($this->baza);
  15. }
  16. }
  17.  
  18. class rejestracja {
  19. public $login;
  20. public $haslo;
  21.  
  22. public function login($login) {
  23. $login=strtolower(trim($login));
  24. return $login;
  25. }
  26. public function haslo($haslo) {
  27. $haslo=strtolower($haslo);
  28. $haslo=md5($haslo);
  29. return $haslo;
  30. }
  31. public function rejestruj($tabela,$login,$haslo) {
  32. $zapytanie=mysql_query("INSERT INTO `konta`(username,password) VALUES ('".$login."','".$haslo."')");
  33. if($zapytanie) return true;
  34. }
  35.  
  36. }
  37.  
  38. $baza=new polacz_mysql();
  39. $baza->baza();
  40.  
  41. $obiekt=new rejestracja();
  42. $login=$obiekt->login($_POST['login']);
  43. $haslo=$obiekt->haslo($_POST['haslo']);
  44.  
  45. $zapytanie=$obiekt->rejestruj('konta',$login,$haslo);
  46.  
  47. if($zapytanie==true) {
  48. echo 'Uzytkownik '.$login.' zostal dodany';
  49. }
  50.  
  51. }
  52. ?>
nospor
Cytat
Czy jest sens takie cos pisac?
W formie w jakiej ty to napisales - nie ma najmniejszego.
Tworzysz klasę, która tylko i wyłącznie wykonuje mysql_connect - bez sensu.

Poczytaj może wpierw trochę więcej o klasach i ich zastosowaniach, poprzeglądaj tematy obiektowe na forum, a potem bierz się za klasy
Larges
Pierwsze Twoje podrygi z obiektowym PHP będą zapewne śmieszne jak wielu z nas. Ja również przestawiam się na obiektowe "myślenie". Im w starsze własne pomysły zaglądam tym większy śmiech/żal mi towarzyszy/ściska.

Swoją drogą polecam tak jak kolega wyżej zapoznać się z jakimś gotowcem. Gotowy kod PHP np. rozrzerzeń PEAR (tam jest 100% obiektowy). Zapoznaj się od wewnątrz z budową systemów szablonów, np. SMARTY. Poza tym książki... (;

No i co dodać. Obiecnie staram się "skumać" MVC, ale jak już doszedłem wcześniej do wniosku i przeczytałem niejeden wątek-tasiemiec na tym forum. Każdy ma własny MVC smile.gif

Jeśli chodzi o bazy danych zobacz jak działają ORM-y.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.