Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> RFC użytkownicy i grupy
zajonc
post
Post #1





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 18.01.2010

Ostrzeżenie: (0%)
-----


witam.

chciałbym się dowiedzieć, co sądzicie o takim zaprojektowaniu klas do obsługi użytkowników i grup.
będą używać 3 tabel z bazy danych:
- users: id, name, hash, email // ([nazwa]:[pola])
- membership: id, uid, gid
- groups: id, name

będę wdzięczny za jakiekolwiek sugestie

  1. class user
  2. {
  3. public function __construct ( $uid ) { ... }
  4. public function get_groups () { ... }
  5. public function get_name () { ... }
  6. public function set_name ( $name ) { ... }
  7. public function get_hash () { ... }
  8. public function set_hash ( $hash ) { ... }
  9. public function get_email () { ... }
  10. public function set_email ( $email ) { ... }
  11. }
  12.  
  13.  
  14. #####
  15.  
  16.  
  17. class group
  18. {
  19. public function __construct ( $gid ) { ... }
  20. public function get_users () { ... }
  21. public function count_users () { ... }
  22. public function user_add ( $uid ) { ... }
  23. public function user_rm ( $uid ) { ... }
  24. public function user_exists ( $uid ) { ... }
  25. public function get_name () { ... }
  26. public function set_name ( $name ) { ... }
  27. }
  28.  
  29.  
  30. #####
  31.  
  32.  
  33. class groups
  34. {
  35. public function add ( $name ) { ... }
  36. public function rm ( $gid ) { ... }
  37. public function exists ( $value, $key = 'id' ) { ... } // $key = ( id, name )
  38. public function get_all () { ... }
  39. public function count () { ... }
  40. }
  41.  
  42.  
  43. #####
  44.  
  45.  
  46. class users
  47. {
  48. public function add ( $name ) { ... }
  49. public function rm ( $gid ) { ... }
  50. public function exists ( $value, $key = 'id' ) { ... } // $key = ( id, name )
  51. public function get_all () { ... }
  52. public function count () { ... }
  53. public function check ( $login, $pass ) { ... }
  54. final public function hash ( $hash ) { ... }
  55. }


Ten post edytował zajonc 7.09.2011, 10:40:31
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
zajonc
post
Post #2





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 18.01.2010

Ostrzeżenie: (0%)
-----


w klasie user nie operuje na danych w bazie, tylko seterami/geterami pracuje na zmiennych, tak?
dopiero users::update () dłubie w bazie.

  1. class user
  2. {
  3. private $id;
  4. private $name;
  5. private $pass;
  6.  
  7. function __construct ( $uid, $name, $pass )
  8. {
  9. $this->id = $uid;
  10. # name, pass
  11. }
  12.  
  13. function get_name () { /* .. */ }
  14. function get_id () { /* .. */ }
  15. function get_pass () { /* .. */ }
  16. function set_pass ( $pass ) { /* .. */ }
  17. }

to już chyba lepiej wygląda. jeszcze chciałbym zaimplementować grupy i pola dodatkowe (np. imię, nazwisko). to też w klasie user?
jeśli tak, go kiedy powinienem pobierać dane z bazy?

Ten post edytował zajonc 8.09.2011, 16:36:17
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 30.12.2025 - 03:22