Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL][PHP]Problem z klasą logowanie, loguje tylko jednego usera
lukaszk
post
Post #1





Grupa: Zarejestrowani
Postów: 159
Pomógł: 0
Dołączył: 21.12.2010

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


Witam, testuję jedną klasę logowania ale mam problem.

Utworzone jedno konto admin i login admin loguje się i wszystko ok.
Utworzyłem kolejne admin1 również z hasłem admin i nie loguje się tzn
Sprawdza warunek i jest spełniony tylko nie rozumiem dlaczego nie mogę się zalogować.

Może w funkcja jest ograniczenie tylko do jednego usera a może sprawdza w sesji czy nie jestem zalogowany (bądź nie byłem) na inne konto.

O to plik


  1. <?php
  2.  
  3.  
  4. class Login{
  5.  
  6. private $dbhost = 'localhost'; // host name
  7.  
  8. private $dbname = 'testdb'; // database name
  9.  
  10. private $dbuser = 'root'; // database username
  11.  
  12. private $dbpass = 'pass'; // database password
  13.  
  14. private $usertable = 'uzytkownicy';
  15.  
  16. private $connect;
  17.  
  18. private $result_to;
  19.  
  20. private $data;
  21.  
  22.  
  23.  
  24. public $dbresponse;
  25.  
  26. public $response;
  27.  
  28.  
  29. public function __construct(){
  30.  
  31. $this->connect = mysql_connect($this->dbhost, $this->dbuser, $this->dbpass);
  32.  
  33. if(!$this->connect){
  34.  
  35. echo "<h4>There is Database connectivity error. check your hostname, username or password</h4>";
  36.  
  37. }else{
  38.  
  39. mysql_select_db($this->dbname);
  40.  
  41. //echo "<h4>Database connect properly</h4>";
  42.  
  43. }
  44.  
  45. }
  46.  
  47.  
  48. public function __destruct() {
  49.  
  50. mysql_close($this->connect);
  51.  
  52. }
  53.  
  54.  
  55. public function query_execute($query){
  56.  
  57. $this->result_to = mysql_query($query);
  58.  
  59. if(!$this->result_to){
  60.  
  61. echo '<h4>query could not executed</h4';
  62.  
  63. }else{
  64.  
  65. return $this->result_to;
  66.  
  67. }
  68.  
  69. }
  70.  
  71.  
  72. public function fetch_data($result){
  73.  
  74. if(!$result){
  75.  
  76. $rows = NULL;
  77.  
  78. }else{
  79.  
  80. $row = mysql_fetch_array($result);
  81.  
  82. return $row;
  83.  
  84. }
  85.  
  86. }
  87.  
  88.  
  89. public function login_user($username, $password){
  90.  
  91. $username = mysql_real_escape_string($username);
  92. $password = mysql_real_escape_string($password);
  93.  
  94. $password = md5($password);
  95.  
  96. $sql = "select login, haslo from uzytkownicy where login = '$username' and haslo = '$password' limit 1";
  97.  
  98. $result = $this->query_execute($sql);
  99.  
  100. $this->data = $this->fetch_data($result);
  101.  
  102. if(!$this->data){
  103.  
  104. return 'Please enter correct username and password';
  105.  
  106. }else{
  107.  
  108. $_SESSION['username'] = $this->data['username']; // username
  109. $_SESSION['permission'] = 'yes';
  110. }
  111.  
  112. }
  113.  
  114. public function logout(){
  115. /*
  116.   if(isset($_SESSION['permission'])) {
  117. unset($_SESSION['permission']);
  118.  
  119. if(isset($_COOKIE[session_name()]))
  120. setcookie(session_name(), '', time() - 1000);
  121. session_destroy();
  122. }
  123.   * */
  124. return 'you are now logged out';
  125.  
  126. }
  127.  
  128. public function session_check() {
  129.  
  130.  
  131.  
  132. echo $_SESSION['username'];
  133.  
  134. if($_SESSION['permission'] != 'yes') {
  135.  
  136. // header("location: index.php");
  137.  
  138. return 'you have no permission to see this page';
  139.  
  140. }else{
  141. //header("location: securearea.php");
  142. return 'you are now logged in';
  143.  
  144. }
  145.  
  146. }
  147. }
  148.  
  149. ?>


i?


Nie widzę nic dziwnego w tej klasie i nie wiem gdzie leży błąd.
Loguje tylko jednego użytkownika
login admin
haslo admin



Ten post edytował lukaszk 1.12.2011, 22:23:42
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: 26.09.2025 - 07:27