Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [HTML][PHP]Jak zrobić panel logowania w PHP , żeby user był zalogowany na każdej podstronie .
Forum PHP.pl > Forum > Przedszkole
Kubala94
Witam, mam pytanie zrobiłem prosty system logowania z poradnika z pewnej strony smile.gif następnie "podpiąłem" ten panel logowania do mojej strony , która napisałem w html , działa OK ale pytanie jak zrobić żeby działało na każdej podstronie serwisu .. tzn. żeby użytkownik był zalogowany cały czas nawet jeśli przejdzie na podstronę (obecnie jak kliknę w inna podstronę to się wylogowuje , nawet jak przejdę na stronę główną zaraz po zalogowaniu) jak to napisać w php? Jestem początkującym , proszę o wyrozumiałość smile.gif P.S. wiem , że nikt nie napisze tego za mnie , nie tego oczekuje , tylko proszę o jakieś wskazówki , pokazanie jak to zrobić.. smile.gif


  1. plik zaloguj.php na który jest przekierowanie po wpisaniu danych logowania
  2.  
  3.  
  4. <?php
  5.  
  6.  
  7. if((!isset($_POST['login'])) || (!isset($_POST['haslo'])))
  8. {
  9. header('Location: index.html');
  10.  
  11. exit();
  12. }
  13. require_once "connect.php";
  14.  
  15. $polaczenie = new mysqli($host, $db_user, $db_password, $db_name);
  16.  
  17. if ($polaczenie->connect_errno!=0)
  18. {
  19. echo "Error:".$polaczenie->connect_errno;
  20. }
  21. else
  22.  
  23. {
  24. $login = $_POST['login'];
  25. $haslo = $_POST['haslo'];
  26.  
  27. $login = htmlentities($login,ENT_QUOTES, "UTF-8");
  28. $haslo = htmlentities($haslo,ENT_QUOTES, "UTF-8");
  29.  
  30.  
  31. if($rezultat = @$polaczenie->query(
  32. sprintf("SELECT * FROM uzytkownicy WHERE user='%s' AND pass='%s'",
  33. mysqli_real_escape_string($polaczenie,$login),
  34. mysqli_real_escape_string($polaczenie,$haslo))))
  35. {
  36. $ilu_userow = $rezultat->num_rows;
  37. if($ilu_userow>0)
  38. {
  39. $_SESSION['zalogowany'] = true;
  40.  
  41. $wiersz = $rezultat->fetch_assoc();
  42. $_SESSION['id'] = $wiersz['id'];
  43. $_SESSION['user'] = $wiersz['user'];
  44. $_SESSION['email'] = $wiersz['email'];
  45. $_SESSION['kontovip'] = $wiersz['kontovip'];
  46.  
  47.  
  48. unset($_SESSION['blad']);
  49. $rezultat->free_result();
  50.  
  51. header('Location: profile.php');
  52.  
  53. }else{
  54.  
  55. $_SESSION['blad'] = '<span style="color:red"> Nieprawidłowy login lub hasło!</span>';
  56. header('Location: index.php');
  57. }
  58.  
  59. }
  60. $polaczenie->close();
  61.  
  62. }
  63.  
  64. ?>
  65.  
  66.  
  67. dalsza cześć kod plik profile.php
  68.  
  69. <?php
  70.  
  71.  
  72. if (!isset($_SESSION['zalogowany']))
  73. {
  74. header('Location: index.html');
  75. exit();
  76. }
  77.  
  78. ?>
  79.  
  80. logout.php
  81.  
  82.  
  83. <?php
  84.  
  85. echo "<p>Witaj ".$_SESSION['user'].'![<a href="logout.php">Wyloguj się</a>]';
  86. echo "<p><b>E-mail</b>:".$_SESSION['email'];
  87. echo "|<b>Konto Vip</b>:".$_SESSION['kontovip']."</p>";
  88. ?>
  89.  
  90. w indeksie mam wklejone to :
  91.  
  92. <?php
  93.  
  94. if ((isset($_SESSION['zalogowany'])) && ($_SESSION['zalogowany']==true))
  95. {
  96. header('Location: profile.php');
  97. exit();
  98. }
  99. ?>
  100.  
  101. <?php
  102. if(isset ($_SESSION['blad'])) echo $_SESSION['blad'];
  103.  
  104. ?>
  105.  



  1. formularz logowania w html:
  2.  
  3. Zaloguj się: <br />
  4. <br />
  5.  
  6. <form action="zaloguj.php" method="post">
  7. Login: <br/> <input type="text" name="login" /> <br />
  8. Hasło: <br /> <input type="password" name="haslo" />
  9.  
  10. <input type="submit" value="Zaloguj" />
  11.  
  12. </form>
  13.  
woxala123
na każdej podstronie
session_start();
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.