Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP5][OOP] Problem ze skryptem
qba10
post
Post #1





Grupa: Zarejestrowani
Postów: 264
Pomógł: 20
Dołączył: 19.08.2007
Skąd: Bryńsk k. Lidzbarka Welskiego (nie mylić z Warmińskim)

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


Witam

Na podstawie http://www.strefaphp.net/artykul36.html chciałem napisać ten skrypt w OOP, ale chyba coś nie wyszło....
Tu moja prośba by sprawdzić mój skrypt, czy ma identyczne działanie jak ten z linku...

Oto skrypt (połączenie z bazą danych jest wykonywane przed wykonaniem tego obiektu):
  1. <?php
  2. class logowanie
  3.  {
  4. public $login;
  5. public $haslo;
  6. public $zapamietaj; 
  7. public $login_use;
  8. public $haslo_use;
  9. public $zalogowany;
  10. public $metod;
  11. public $dane;
  12. public $kxc = "a523d703f908dd69e02db64ec35d07315f4c49ab3cacad14a97304b02f2fbb09";  
  13.  
  14.  
  15.  
  16.  private function sprawdzanie()
  17.  {
  18.  
  19. if(isset($_COOKIE['dane'])) 
  20. {
  21. $this->dane = $_COOKIE["dane"]^$this->kxc;
  22. $this->login_use = substr($dane, 0, 32);
  23. $this->haslo_use = substr($dane, -32);
  24. $this->metod = "cookies";
  25. }
  26. elseif(isset($_SESSION['login']) AND isset($_SESSION['haslo'])) 
  27. {
  28. $this->login_use = $_SESSION['login'];
  29. $this->haslo_use = $_SESSION['haslo'];
  30. $this->metod = "session";
  31. }
  32. elseif(isset($this->login) AND isset($this->haslo)) 
  33. {
  34. $this->login_use = md5(strtolower($this->login));
  35. $this->haslo_use = md5($this->haslo);
  36. $this->metod = "post";
  37. } 
  38.  
  39.  
  40.  
  41.  }
  42.  public function autoryzacja($login, $haslo, $zapamietaj )
  43. {
  44.  
  45.  $this->login = $login ;
  46.  $this->haslo = $haslo;
  47.  $this->zapamietaj = $zapamietaj;
  48.  
  49.  
  50.  $this->zalogowany = false ;
  51.  if(isset($this->metod)) 
  52.  {
  53.  $query = mysql_query("SELECT * FROM `users` WHERE `user`='".$this->login_use."' AND `pass`='".$this->haslo_use."';"); 
  54.  if(mysql_num_rows($query) == 1) 
  55.  {
  56.  
  57.  $wiersz = mysql_fetch_array($query);
  58.  $_SESSION['login'] = $wiersz['user'];
  59.  $_SESSION['haslo'] = $wiersz['pass'];
  60.  $_SESSION['nick'] = $wiersz['nick']; 
  61.  $this->zalogowany = true;
  62.  if($this->metod == "post" AND isset( $this->zapamietaj) AND $this->zapamietaj == "ok") 
  63.  {
  64.  $dane = ($login.$haslo)^$_CONFIG['kxc'];
  65.  setcookie ("dane", $dane,time()+3600*24*365);
  66.  }
  67.  
  68. return $this->zalogowany ;  
  69.  }
  70.  }
  71.  
  72. }
  73. }
  74. ?>


PS: Żadnego błędu mi nie wywala ale, logowanie nie chce działać...

Pozdrawiam
Qba10

Ten post edytował qba10 19.06.2008, 20:52:25
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
nithajasz
post
Post #2





Grupa: Zarejestrowani
Postów: 230
Pomógł: 27
Dołączył: 27.05.2008
Skąd: Warszawa

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


Ja się tak zapytam, masz dwie metody, sprawdzanie i autoryzacja. Gdzie one są ze sobą powiązane? W skrypcie gdzieś dalej? Po drugie jeśli najpierw sprawdzasz dane, metodą sprawdzanie to ona powinna coś zwracać bo inaczej nie przekażesz żadnych danych do autoryzacji.

Przynajmniej moim zdaniem nie znam kursu może coś innego tam wymodzili.
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: 10.10.2025 - 10:17