Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> uwierzytelnianie, jak zrobic 3 rodzaje uzytkownikow??
-kramot-
post
Post #1





Goście







Na początek:
Niemogę poradzić sobie ze stwożeniem funcji uwierzytelniającej i rozrużniającej 3 rodzaje uzytkownikow: admin, obluga, klient.
Staram się to zrobic na obiektach. ponizej przedstawie kod a potem co nieco o nim opowiem:
  1. <?php
  2. function Logowanie($username, $password, $id_uprawnienia)
  3. {
  4. $q = mysql_query (&#092;"select * from wypozyczalnia.uzytkownicy where 
  5. login = '$username' and
  6. haslo = '$password'&#092;"); //zapytanie mysql
  7.  
  8. $il_wiersz = mysql_num_rows ($q); //liczba wierszy
  9.  
  10. if ($il_wiersz > 0) //jeśli > 0 to zalogowany i .....
  11. {
  12. $wiersz = mysql_fetch_array ($q); //tablica
  13.  
  14.  
  15. if($wiersz['id_uprawnienia'] == 3)
  16.  {
  17. $_SESSION['count'] = 3;
  18.  
  19. $id_uprawnienia = 3;  //niedziala :(
  20.  
  21.  echo &#092;"udalo ci się jako administrator\";
  22.  echo &#092;"Witaj, \" .$wiersz['imie'].\" \";
  23.  
  24.  }
  25.  elseif($wiersz['id_uprawnienia'] == 2)
  26.  {
  27. $_SESSION['count'] = 2;
  28.  
  29. $id_uprawnienia = 2; //nie dziala :(
  30.  
  31.  echo &#092;"udalo ci się jako obsluga\";
  32.  echo &#092;"Witaj, \".$wiersz['imie'].\"\";
  33.  }
  34. elseif ($wiersz['id_uprawnienia'] == 1)
  35. {
  36. $_SESSION['count'] = 1;
  37.  
  38. $id_uprawnienia = 1; //nie dziala :(
  39.  
  40. echo &#092;"udalo ci się jako klientowi\";
  41.  echo &#092;"Witaj, \" .$wiersz['imie'].\" \";
  42.  }
  43.  else
  44.  {
  45.  return 0;
  46.  }
  47. }
  48. else 
  49. {
  50. return 0;
  51. }
  52.  
  53. }
  54. ?>

powyzej funcja odpowiedzialna za zalogowanie uzytkownikow - dziala bez zarzutu oprocz miejssc oznaczonym (a te niedzialaj dopiero przy wspolpracy z funcja Wyswietl):

  1. <?php
  2. function Wyswietl()
  3. {
  4. echo &#092;"<html>n<head>\";
  5. $this->WyswietlTytul();
  6. $this->WyswietlStyle();
  7. echo &#092;"</head>n<body>n\";
  8. //echo \"uprawnienie nr: \" .$id_uprawnienia. \"\";
  9. if (isset($_SESSION['count']) and ($id_uprawnienia = 3)) //oczywiscie tu jest blad - tylko jak to zrealizowac??!!
  10. {
  11.  
  12. $this->WyswietlNaglowek();
  13. $this->WyswietlMenu($this->przyciski);
  14. $this->Zawartosc1();
  15. $this->WyswietlStopke();
  16. // echo \"zalogowany jako\" .$id_uprawnienia.\"\";
  17. echo &#092;"</body>n</html>n\";
  18. }
  19. else
  20. {
  21. $this->WyswietlNaglowek();
  22.  $this->WyswietlMenu($this->przyciski);
  23.  $this->NieZalogowany();
  24.  $this->WyswietlStopke();
  25.  echo &#092;"</body>n</html>n\";
  26. }
  27.  
  28.  
  29. }
  30. ?>


Jak sie domyslacie niewiele z tego dziala. Dziala to ze uzytkownicy sie loguja i na dodatek $wiersz['id_uprawnienia'] zwraca to co nalezy ale juz jesli chcialbym uzaleznic to co jest wyswietlone na stronie to dupa. wiem ze wiaze sie to z przekazaniem zmiennych (chyba) ale nie wiem jak to zrealizowac. Probowalem juz rozgrysc to od strony zasiegu zmiennych itd....
Jesli ktos ma jakies pomysly - a jest tak napewno - to bardzo prosilbym o jakies wskazowki.

Zdaje sobie sprawe ze niezbyt czytelnie opisalem problem ale licze na wasz spryt (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif)
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: 25.08.2025 - 20:41