Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> logowanie, jestem zielony
dez17
post 23.09.2005, 16:41:30
Post #1





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 22.06.2005

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


Siemka moze cie mi pomoc z tym skryptem bo kapletnie nie czaje jak go przerobic no wiec skrypt wyglada tak:
  1. <?php
  2.  
  3. include("config.php");
  4.  
  5. session_register("status_uzyt");
  6.  
  7. echo "<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">";
  8. echo "<html><head>";
  9. echo "<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-2" />";
  10. echo "<meta http-equiv="content-language" content="pl">";
  11. echo "<title>Prosta strona ze skryptem logowania</title>";
  12. echo "<style>";
  13. echo "p {margin: 20px; background-color: #efefef;}";
  14. echo "</style>";
  15. echo "<body>";
  16.  
  17. function pokaz_okno_log()
  18. {
  19. echo "<p>";
  20. echo "<form name="logowanie" action="index.php" method="post">";
  21. echo "Login: <input type="text" name="login"><br>";
  22. echo "Hasło: <input type="password" name="haslo"><br>";
  23. echo "<input type="hidden" name="strona" value="sprawdz">";
  24. echo "<input type="submit" value="Zaloguj">";
  25. echo "</p>";
  26. }
  27.  
  28. // Na początku skryptu najlepiej jest sprawdzić czy zmienna nie zawiera
  29. // żadnych danych - jeżeli nie zawiera możemy nadać jej naszą wartość
  30. // zabraniającą dostępu do strony
  31. if(empty($_SESSION['status_uzyt']))
  32. {
  33. $_SESSION['status_uzyt'] = "0";
  34. }
  35.  
  36. // Pobieramy zmienną, która decyduje o tym, jaka strona jest wyświetlana
  37. if($HTTP_POST_VARS["strona"] == "")
  38. {
  39. $strona = $HTTP_GET_VARS["strona"];
  40. }
  41. else
  42. {
  43. $strona = $HTTP_POST_VARS["strona"];
  44. }
  45.  
  46. // Sprawdzamy zawartość zmiennej $strona i wywołujemy odpowiednią akcję skryptu
  47. if($strona == "")
  48. {
  49. // Zmiennna nie została ustawiona czyli skrypt został wywołany bez niej.
  50. // Wyświetlamy więc stronę główną z możliwością przejścia do strony ukrytej
  51. echo "<p>To jest strona główna serwisu. Istnieją jeszcze trzy strony, lecz są one prze
    znaczone wyłącznie dla zalogowanych użytkowników: <a href="
    index.php?strona=superadministrator">Superadministratora</a>, <a href="index.php?strona=administrator">Administratora</a> i <a href="index.php?strona=uzytkownik">Użytkownika</a>.</p>";
  52.  
  53. if($_SESSION['status_uzyt'] == 0)
  54. {
  55. pokaz_okno_log();
  56. }
  57. }
  58. elseif($strona == "zaloguj")
  59. {
  60. pokaz_okno_log();
  61. }
  62. elseif($strona == "sprawdz")
  63. {
  64. include("./uprawnienia.php");
  65.  
  66. for($i=0;$i<count($Uzytkownik);$i++)
  67. {
  68. $UzytkownikDane[$i] = explode("|", $Uzytkownik[$i]);
  69. }
  70.  
  71.  
  72. // W tym miejscu srpawdzamy czy użytkownik podał odpowiednie dane w formularzu
  73.  
  74. for($i=0;$i<count($Uzytkownik);$i++)
  75. {
  76. if($HTTP_POST_VARS["login"] == $UzytkownikDane[$i][0] && $HTTP_POST_VARS["haslo"] == $UzytkownikDane[$i][1])
  77. {
  78. $_SESSION['status_uzyt'] = $UzytkownikDane[$i][2];
  79. echo "<p>Gratuluję - zalogowałeś się na konto "";
  80. echo $UzytkownikDane[$i][0]."". Teraz możesz przejść do ";
  81.  
  82. if($_SESSION['status_uzyt'] == 3)
  83. {
  84. echo "<a href="index.php?strona=superadministrator">podstrony Superadministraotra</a> oraz do ";
  85. echo "<a href="index.php?strona=administrator">podstrony Administraotra</a>, a także do ";
  86. echo "<a href="index.php?strona=uzytkownik">podstrony Użytkownika</a> ";
  87. }
  88. elseif($_SESSION['status_uzyt'] == 2)
  89. {
  90. echo "<a href="index.php?strona=administrator">podstrony Administraotra</a> oraz do ";
  91. echo "<a href="index.php?strona=uzytkownik">podstrony Użytkownika</a> ";
  92. }
  93. elseif($_SESSION['status_uzyt'] == 1)
  94. {
  95. echo "<a href="index.php?strona=uzytkownik">podstrony Użytkownika</a> ";
  96. }
  97. }
  98.  
  99. }
  100.  
  101. if($_SESSION['status_uzyt'] == 0)
  102. {
  103. // Jeżeli użytkownik podał nieprawidłowe dane, wówczas ustalamy wartość zmiennej
  104. // na 0, wyświetlamy odpowiedni komunikat i pokazujemy okno do logowania
  105. $_SESSION['status_uzyt'] = 0;
  106.  
  107. echo "<p>Logowanie nieudane. Spróbuj jeszcze raz.</p>";
  108.  
  109. pokaz_okno_log();
  110.  
  111.  
  112. }
  113.  
  114. }
  115. elseif($strona == "wyloguj")
  116. {
  117. // W tym miejscu wylogowujemy użytkownika. Wystarczy zmienną "$status_uzyt" ustawić
  118. // na wartość 0 i pokazać odpowiedni komunikat
  119. $_SESSION['status_uzyt'] = 0;
  120. echo "<p>Zostałeś wylogowany. Aby przejść na stronę główną <a href="index.php">kliknij w tym miejscu</a>.</p>";
  121. }
  122. elseif($strona == "superadministrator")
  123. {
  124. // Strona dostępna tylko dla Superadministratora
  125. if($_SESSION['status_uzyt'] == 3)
  126. {
  127. echo "<p>Znajdujesz się na stronie dostępnej tylko dla Superadministratorów. <a href="index.php?strona=wyloguj">Możesz się wylogować.</a></p>";
  128. }
  129. else
  130. {
  131. echo "<p>Ta strona dostępna jest tylko dla zalogowanych użytkowników (Superadministratorów).</p>";
  132. pokaz_okno_log();
  133. }
  134. }
  135. elseif($strona == "administrator")
  136. {
  137. // Strona dostępna tylko dla administratora
  138. if($_SESSION['status_uzyt'] == 2 || $_SESSION['status_uzyt'] == 3)
  139. {
  140. echo "<p>Znajdujesz się na stronie dostępnej tylko dla Superadministratorów i Administ
    ratorów. <a href="
    index.php?strona=wyloguj">Możesz się wylogować.</a></p>";
  141. }
  142. else
  143. {
  144. echo "<p>Ta strona dostępna jest tylko dla zalogowanych użytkowników (Superadministratorów i Administratorów).</p>";
  145. pokaz_okno_log();
  146.  
  147. }
  148. }
  149. elseif($strona == "uzytkownik")
  150. {
  151. // Strona dostępna tylko dla Użytkownika
  152. if($_SESSION['status_uzyt'] == 1 || $_SESSION['status_uzyt'] == 2 || $_SESSION['status_uzyt'] == 3)
  153. {
  154. echo "<p>Znajdujesz się na stronie dostępnej tylko dla Superadministratorów, Administr
    atorów i zalogowanych Użytkowników. <a href="
    index.php?strona=wyloguj">Możesz się wylogować.</a></p>";
  155. }
  156. else
  157. {
  158. echo "<p>Ta strona dostępna jest tylko dla zalogowanych użytkowników.</p>";
  159. pokaz_okno_log();
  160. }
  161. }
  162.  
  163. echo "</body>";
  164. echo "</html>";
  165.  
  166. ?>
( http://phpfi.com/78905 )
w pliku uprawnienia.php są zapisane hasła loginy i poziomy uprawnień wygląda to tak
  1. <?php
  2. $uzytkownik[] = "superadmin|haslo|3";
  3. $uzytkownik[] = "admin|haslo|2";
  4. $uzytkownik[] = "user|haslo|1";
  5.  
  6. ?>
może mi ktoś tak prosze bardzo ale to bardzo was zrobić ,żeby hasło login poziom uprawnien pobieralo z bazy danych mysql przyczym polaczenie z baza jest na stalo w pliku config.php
Z góry wielkie dzieki
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 2)
strife
post 23.09.2005, 18:03:15
Post #2





Grupa: Przyjaciele php.pl
Postów: 2 605
Pomógł: 96
Dołączył: 22.10.2004
Skąd: UK

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


Witam,

Ta część odpowiedzialna za pobieranie danych z mysql, zamiast tej tablicy...
  1. <?php
  2.  
  3. // ... łączenie z bazą 
  4. $zapytanie = mysql_query("SELECT * FROM uzytkownicy");
  5. while($row = mysql_fetch_array($zapytanie) )
  6. {
  7. $uzytkownik[] = $row['login'] . '|'. $row['haslo'] . '|' . $row['access'];
  8. }
  9.  
  10. ?>

Taki zarysik mały... dopasuj to do swojej bazy.

Pozdro!


--------------------
Go to the top of the page
+Quote Post
dez17
post 24.09.2005, 12:37:16
Post #3





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 22.06.2005

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


Dzięki tylko ,że mam jeszcze jeden problem tongue.gif Sorka tongue.gif Ale niewiem jak to sensownie złożyć kto napisze swoją koncepcje tongue.gif Prosze i to bardzo. Pozdro
Go to the top of the page
+Quote Post

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 Wersja Lo-Fi Aktualny czas: 24.07.2025 - 15:32