Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]Logowanie, drobna pomoc;]
ReBeLs513
post
Post #1





Grupa: Zarejestrowani
Postów: 233
Pomógł: 0
Dołączył: 14.03.2010
Skąd: Dessau

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


Witam! Mam taki kod logowania:
  1. <?php
  2.  
  3. $uzytkownicy = array(1 =>
  4. array('login' => 'admin', 'haslo' => sha1('admin')),
  5. array('login' => 'user1', 'haslo' => sha1('ddd')),
  6. array('login' => 'user2', 'haslo' => sha1('fff'))
  7. );
  8.  
  9. function czyIstnieje($login, $haslo)
  10. {
  11. global $uzytkownicy;
  12.  
  13. $haslo = sha1($haslo);
  14.  
  15. foreach($uzytkownicy as $id => $dane)
  16. {
  17. if($dane['login'] == $login && $dane['haslo'] ==
  18.  
  19. $haslo)
  20. {
  21. // O, jest ktos taki - zwroc jego ID
  22. return $id;
  23. }
  24. }
  25. // Jeżeli doszedłeś a tutaj, to takiego użytkownika nie ma
  26. return false;
  27. } // end czyIstnieje();
  28. // Wlasciwy skrypt
  29.  
  30.  
  31. if(!isset($_SESSION['uzytkownik']))
  32. {
  33. // Sesja się zaczyna, wiec inicjujemy użytkownika
  34.  
  35. anonimowego
  36. $_SESSION['uzytkownik'] = 0;
  37. }
  38. if($_SESSION['uzytkownik'] > 0)
  39. {
  40. // Ktos jest zalogowany
  41. echo 'Witaj, '.$uzytkownicy[$_SESSION['uzytkownik']]
  42.  
  43. ['login'].' na naszej stronie!';
  44. }
  45. else
  46. {
  47. // Niezalogowany
  48. if($_SERVER['REQUEST_METHOD'] == 'POST')
  49. {
  50. if(($id = czyIstnieje($_POST['login'], $_POST
  51.  
  52. ['haslo'])) !== false)
  53. {
  54. // Logujemy uzytkownika, wpisal
  55.  
  56. poprawne dane
  57. $_SESSION['uzytkownik'] = $id;
  58. echo 'Dziekujemy, zostales
  59.  
  60. zalogowany! <a href="index.php">Dalej</a>';
  61. }
  62. else
  63. {
  64. echo 'Podales nieprawidlowe dane,
  65.  
  66. zegnaj! <a href="index.php">Dalej</a>';
  67. }
  68. }
  69. else
  70. {
  71. echo '<form method="post" action="index.php">
  72. Zaloguj sie: <input type="text"
  73.  
  74. name="login"/>
  75. <input type="password" name="haslo"/>
  76. <input type="submit"
  77.  
  78. value="OK"/></form>';
  79. }
  80. }
  81.  
  82.  
  83. if (!isset($_SESSION['inicjuj']))
  84. {
  85. $_SESSION['inicjuj'] = true;
  86. $_SESSION['ip'] = $_SERVER['REMOTE_ADDR'];
  87. }
  88.  
  89.  
  90. if($_SESSION['ip'] != $_SERVER['REMOTE_ADDR'])
  91. {
  92. die('Proba przejecia sesji udaremniona!');
  93. }
  94.  
  95. ?>


Mam pytanie: jak zrobić, aby jeśli zaloguje się user1 lub user2 to i tak do tej strony nie będzie miał dostępu (tylko admin)?

Taki kod nie działa:
  1. <?php
  2. if (isset($_SESSION['uzytkownik']) && ($_SESSION['uzytkownik']=='admin') )
  3. {
  4. echo "Witaj Adminie:)";
  5. }
  6. else
  7.  
  8. {
  9. echo "Nie jesteś adminem! Narqa ;)";
  10. }
  11. ?>


Proszę o szybką odpowiedź, dzięki.

Ten post edytował ReBeLs513 12.12.2010, 14:49:44


--------------------
Przypomnij o "+", jeśli mi pomogłeś a nie zapunktowałem :P
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 21.08.2025 - 11:06