Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Problem z skryptem logowania i rejestracji
Forum PHP.pl > Forum > PHP
dzesi
Witam na zaliczenie pisze skrypt logowania i rejestracji i do końca nie wiem co robie złe , bo nic nie dodaje do bazy przy próbie rejestracji .Prosiłbym o porady co do tych class co poprawić ulepszyć itd
matix
Może zacznę od tego, że zmienne publiczne przy tak prywatnych rzeczach jest blee smile.gif
Po drugie, nie moim zdaniem łączysz php 4 z php5. Rozumiem, że w php5 nadal łączenie odbywa się poprzez zwykły sterownik mysql, ale takie coś moim zdaniem jest nie najlepszym rozwiązaniem. Powinieneś napisać prostą klasę do obsługi mysql i do niej się odwoływać. To samo tyczy się sesjii jako mechanizmu działania.
Kolejne:
  1. <?php
  2. $this->haslo=$_POST['haslo'];
  3. $this->haslotwo =$_POST['haslotwo'] ;
  4. ?>

Wtf?

To co napisałeś nie jest zgodne z ideą obiektowego programowania.
Pokaże ci jak to powinno mniej więcej wyglądać (szablon), a ty sobie to przerób, żeby to działało.

  1. <?
  2. class User {
  3.  
  4. private
  5. $db,
  6. $login,
  7. $pass;
  8.  
  9. public function __construct($login, $pass)
  10. {
  11. $oConfig = new Config('config.php'); // pobiera dane z config.php
  12. $this -> db = db::singleton;
  13. $this -> db -> setSource($oConfig);
  14.  
  15. $this -> login = $login;
  16. $this -> pass = $pass;
  17. }
  18.  
  19. public function isValid()
  20. {
  21. return ($this -> login != null && $this -> pass != null);
  22. }
  23.  
  24. public function check()
  25. {
  26. $this -> db -> setwhere ('login = '.$login);
  27. $this -> db -> setwhere ('pass = '.$pass);
  28. $this -> db -> dbSelect('users');
  29.  
  30. return $this -> db -> numrows();
  31. }
  32.  
  33. public function save()
  34. {
  35. $oUser = new UserSession;
  36. $oUser -> logged = true;
  37. $oUser -> login = $login;
  38. $oUser -> pass = md5($pass);
  39. }
  40. }
  41. $sLogin = $_POST['login'];
  42. $sPass = $_POST['password'];
  43.  
  44. $oUser = new user($sLogin, $sPass);
  45.  
  46. if ($oUser -> isValid() && $oUser -> check() == 1)
  47. $oUser -> save();
  48. ?>


Reszta zależy od ciebie. I proszęcię bardzo - ucz się tworzyć "ładny" i przejrzysty kod. To podstawa.

Pozdrawiam smile.gif
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.