Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: obiekt user
Forum PHP.pl > Forum > PHP
AxZx
witam

w ktorym kierunku mam podazac aby dobrze nauczyc sie myslec obiektowo ?
ponizsza klasa nie dziala
troche nie rozumiem jak mialo by to dzialac

plik index.php:
  1. <?
  2. require_once('include/core.class.php');
  3. require_once('include/users.class.php');
  4.  
  5.  
  6. new core;
  7.  
  8.  
  9. ?>
  10.  
  11. <div id="logowanie">
  12. <?
  13. $user = new user;
  14. $user->wyswietl_blad();
  15. ?>
  16. </div>

plik user.class.php:
  1. <?
  2.  
  3.  
  4. class user extends core{
  5.  
  6.  
  7. /*
  8. wlasciwosci dla obiektu user:
  9. - login
  10. - haslo
  11. - nazwa
  12. - mail
  13.  
  14. metody dla obiektu user
  15. - logowanie
  16. - rejestracja
  17. - potwierdzenie rejestracji
  18. - edycja danych konta
  19. - zapis danych konta
  20. - usuwanie
  21. - wylogowanie
  22.  
  23. */
  24.  
  25. //login usera
  26. var $user_login;
  27.  
  28. //haslo usera
  29. var $user_pass;
  30.  
  31. //nazwa usera
  32. var $user_nazwa;
  33.  
  34. //mail usera
  35. var $user_mail;
  36.  
  37. //nazwa tabeli w ktorym trzymane sa dane userow
  38. var $user_table = "user";
  39.  
  40. //bledy
  41. var $blad = '';
  42.  
  43.  
  44. function user(){
  45. if(isset($_POST['login']) && isset($_POST['haslo'])){
  46. //jezeli dane wyslane z formularza
  47. if($this->sprawdz_poprawnosc($this->parse($_POST['login']), $this->parse($_POST['haslo']))){
  48. //jezeli poprawne dane
  49. $_SESSION['user_login'] = $_POST['login'];
  50. header("Location: ".$_SERVER['SCRIPT_FILENAME']);
  51. }else{
  52. $this->blad .= "Bledne dane logowania";
  53. }
  54. }else{
  55. $this->sprawdz_stan();
  56. }
  57. }
  58.  
  59.  
  60. function sprawdz_stan(){
  61. // sprawdza czy jest ustawiona sesja, jezeli jest wyswietla menu dla usera, 
  62. // jesli nie ma wyswietla formularz logowania
  63.  
  64. if(isset($_SESSION['user_login'])){
  65. $this->zalogowany();
  66. $this->user_login = $_SESSION['user_login'];
  67. }else{
  68. $this->formularz();
  69. }
  70.  
  71.  
  72. }
  73.  
  74. function zalogowany(){
  75.  
  76. echo "<br>Witaj ".$this->user_login;
  77. echo "<br> Wyloguj";
  78.  
  79. }#koniec zalogowany
  80.  
  81.  
  82. function formularz(){
  83. ?><form action="" method="post">
  84. login: <input name="login" type="text" /><br />
  85. <br />haslo:
  86. <input name="haslo" type="text" /><br />
  87. <br />
  88. <input name="ok" type="submit" value="ok" />
  89. </form><?
  90. }#koniec formularz
  91.  
  92.  
  93. function sprawdz_poprawnosc($login, $haslo){
  94. //funkcja pobiera login i haslo usera i sprawdza czy sie zgadzaja, wyswietla retur
    n albo false
  95.  
  96. $zapytanie1 = sql_db::query("SELECT count(*) from ".$this->user_table.
  97. WHERE user_login = '".$login."' AND user_pass='".md5($haslo)."'");
  98. $dane1 = sql_db::fetch_row($zapytanie1);
  99. $dane1 = $dane1[0];
  100. if($dane1>0){
  101. //dane poprawne, zapisuje zmienna sesyjna
  102. return true;
  103. }else{
  104. return false;
  105. }
  106.  
  107. }//koniec sprawdz_poprawnosc
  108.  
  109.  
  110. function wyswietl_blad(){
  111. //funkcja wyswietla bledy
  112. if($this->blad != ''){
  113. return $this->blad;
  114. }else{
  115. return false;
  116. }
  117. }//koniec wyswietl_blad
  118.  
  119.  
  120. }
  121.  
  122. ?>
nospor
Cytat
ponizsza klasa nie dziala
No chlopie, przeszedles samego siebie. Chyba godzine myslales, jakby tu nam opisac swoj problem. Wnoisukuje tak, gdyz dzieki temu jedenmu zdaniu my wiemy juz wszystko: czym sie objawia to nie dzialanie, jakie są errory i takie tam.

To byla ironia, napisz cos wiecej, niby skad mamy widziec co rozumiesz pod pojeciem "nie dziala"
AxZx
nie chodzi mi o to ze nie dziala
bo zeby dzialalo to bym sam doszedl
tylko zastanawiam sie czy wogole w dobrym kierunku ide
czy dobrze rozgryzlem ten obiekt?
bo jezeli wogole to jest bezsensu to po co mam tracic czas na poprawianie tak zeby dzialalo.
sobstel
Cytat
w ktorym kierunku mam podazac aby dobrze nauczyc sie myslec obiektowo ?


moze sie czepaim albo przesadzam, ale to pytanie w stylu "w kotrym kierunku mam podazac, aby dobrze pisac w php". są cale ksiazki i artykuly temu poswiecone a ty chcesz zeby strescic ci o tym w jednym poscie na forum? osobiscie uwazam, ze to niemozliwe, temat jest zbyt rozległy i zlozony.
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.