Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Logowanie z zapisanych danych
Forum PHP.pl > Forum > Przedszkole
Mefiuu
Witam. Mam pytanie. Stworzyłem dość prymitywny sposób samego logowania do panelu administracyjnego, który mi chwilowo wystarcza. Wykorzystałem opcję:
1. Plik login.php, który zawiera tylko formularz logowania.
2. Plik admin.php, w którym znajduje się instrukcja warunkowa

if ($login=='cos' && $haslo=='cos1') {
echo "Witaj w panelu administracyjnym.";
}

Takie coś mi chwilowo wystarcza. Jednak chciałbym to "wzmocnić" przez sprawdzanie, czy ktoś się zalogował. Znaczy chodzi o to, że do panelu chcę dodać różne opcje, jednak na innych plikach ten formularz już nie będzie działał. Wiem, że chronić podstronę można za pomocą sesji, jednak nie wiem dokładnie jak ich użyć, a tym bardziej do tego prymitywnego systemu logowania. Jak je dodać do tego systemu, aby do różnych podstron dodać ochronę??
erix
Temat: PHPBezpieczenstwo_sesji
Mefiuu
Chodzi mi o coś takiego (zmieniłem pliki tak, aby nie używać bazy danych, tylko zapisanych danych z funkcji warunkowej if):
index.php
  1. <?php
  2. session_register("zalogowany");
  3.  
  4. if(empty($_SESSION["zalogowany"]))$_SESSION["zalogowany"]=0;
  5.  
  6. function ShowLogin($komunikat=""){
  7.    echo "$komunikat<br>";
  8.    echo "<form action='index.php' method=post>";
  9.    echo "Login: <input type=text name=login><br>";
  10.    echo "Hasło: <input type=text name=haslo><br>";
  11.    echo "<input type=submit value='Zaloguj!'>";
  12.    echo "</form>";
  13. }
  14.  
  15. ?>
  16. <!DOCTYPE html
  17.    PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  18.    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  19. <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="pl" lang="pl">
  20. <head>
  21.    <title>Strona główna</title>
  22. </head>
  23. <body>
  24. <?php
  25. if($_GET["wyloguj"]=="tak"){$_SESSION["zalogowany"]=0;echo "Zostałeś wylogowany z serwisu";}
  26. if($_SESSION["zalogowany"]!=1){
  27.    if(!empty($_POST["login"]) && !empty($_POST["haslo"])){
  28.        if ($login=='Admin' && $haslo=='Admin') {
  29.            echo "Zalogowano poprawnie. <a href='index.php'>Przejdź na stronę główną</a>";
  30.            $_SESSION["zalogowany"]=1;
  31.            }
  32.        else echo ShowLogin("Podano złe dane!!!");
  33.        }
  34.    else ShowLogin();
  35. }
  36. else{
  37. ?>
  38. Gratulacje! Zalogowałeś się pomyślnie! Możesz przejśc teraz do innych podstron, np. do <a href="stronka.php">tej</a>
  39. <br><a href='index.php?wyloguj=tak'>wyloguj się</a>
  40. <?php
  41. }
  42. ?>
  43.  
  44. </body>
  45. </html>


Jednak po wpisaniu loginu: Admin i hasła: Admin, wyskakuje błąd o złych danych. Jak to ?
Wicepsik
  1. <?php
  2. session_register("zalogowany");
  3.  
  4. if(empty($_SESSION["zalogowany"]))$_SESSION["zalogowany"]=0;
  5.  
  6. function ShowLogin($komunikat=""){
  7.   echo "$komunikat<br>";
  8.   echo "<form method=post>";
  9.   echo "Login: <input type=text name=login><br>";
  10.   echo "Hasło: <input type=text name=haslo><br>";
  11.   echo "<input type=submit value='Zaloguj!'>";
  12.   echo "</form>";
  13. }
  14.  
  15. ?>
  16. <!DOCTYPE html
  17.   PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  18.   "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  19. <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="pl" lang="pl">
  20. <head>
  21.   <title>Strona główna</title>
  22. </head>
  23. <body>
  24. <?php
  25. if($_GET["wyloguj"]=="tak"){$_SESSION["zalogowany"]=0;echo "Zostałeś wylogowany z serwisu";}
  26. if($_SESSION["zalogowany"]!=1){
  27.   if(!empty($_POST["login"]) && !empty($_POST["haslo"])){
  28.       if ($_POST["login"]=='Admin' && $_POST["haslo"]=='Admin') {
  29.           echo "Zalogowano poprawnie. <a href='index.php'>Przejdź na stronę główną</a>";
  30.           $_SESSION["zalogowany"]=1;
  31.           }
  32.       else echo ShowLogin("Podano złe dane!!!");
  33.       }
  34.   else ShowLogin();
  35. }
  36. else{
  37. ?>
  38. Gratulacje! Zalogowałeś się pomyślnie! Możesz przejśc teraz do innych podstron, np. do <a href="stronka.php">tej</a>
  39. <br><a href='index.php?wyloguj=tak'>wyloguj się</a>
  40. <?php
  41. }
  42. ?>
  43.  
  44. </body>
  45. </html>
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.