Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Logowanie (pierwsza klasa)
Bent
post 26.02.2010, 17:16:07
Post #1





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 24.12.2009

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


Witam,

Dopiero zaczynam przygodę z OOP. Napisałem pierwszą taką klasę:

  1. class Users extends mysqli
  2. {
  3. private $login = 'login', $password = 'password', $submit;
  4.  
  5. private function showLogForm()
  6. {
  7. ?>
  8. <form method="post" action="">
  9. <table>
  10. <tr>
  11. <td>Login: </td><td><input type="text" name="<?php echo $this -> login; ?>" /></td>
  12. </tr>
  13. <tr>
  14. <td>Hasło: </td><td><input type="text" name="<?php echo $this -> password; ?>" /></td>
  15. </tr>
  16. <tr>
  17. <td></td><td><input type="submit" name="submit" value="Zaloguj!" /></td>
  18. </tr>
  19. </table>
  20. </form>
  21. <?php
  22. }
  23.  
  24. private function isSent($submit)
  25. {
  26. $this -> submit = $submit;
  27. if (isset($this -> submit))
  28. return true;
  29. else
  30. return false;
  31. }
  32.  
  33. private function isFilled()
  34. {
  35. foreach ($_POST as $key => $value)
  36. {
  37. if (!isset($key) || empty($value))
  38. return false;
  39. }
  40. return true;
  41. }
  42.  
  43. public function logIn()
  44. {
  45. if ($this -> isSent($_POST['submit']))
  46. {
  47. if ($this -> isFilled())
  48. echo 'OK';
  49. else
  50. echo 'Uzupełnij formularz!';
  51. }
  52. else
  53. {
  54. $this -> showLogForm();
  55. }
  56. }
  57.  
  58. }
  59.  
  60. $user = new Users;
  61. $user -> logIn();


Mam 2 pytania:

1. W mojej klasie metody wyświetlające formularz i sprawdzające go są typu private, metodą, która to wszystko ogarnia jest metoda logIn(). Czy to dobry pomysł? Czy może lepiej wszystkie te metody ustawić jako public i całość sprawdzać poza klasą po utworzeniu obiektu?

2. Czy dobrym pomysłem jest tworzenie metod wyświetlających formularze czy raczej do takich rzeczy się funkcji nie tworzy?
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Wersja Lo-Fi Aktualny czas: 14.08.2025 - 08:41