Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Sesja w podstronach.
Forum PHP.pl > Forum > Przedszkole
Fonev
Witam,
napisałem kawałek kodu do logowanie i ok działa jakoś w miarę jak na początek...

Formularz w pliku index.php wygląda tak


  1. <form action="index.php" method="post">
  2. Login<input name="login" type="text" value="">
  3. Hasło<input name="haslo" type="password" value="">
  4. <input type="submit" name="zaloguj" value="Zaloguj" />
  5. </form>


następnie poniżej w tym samym pliku index.php po wciśnięciu przycisku Zaloguj trwa uwierzytelnianie, pokazanie ewentualnych błędów i jeśli ok to zalogowanie i przeniesienie do nowej podstrony dostępnej tylko dla zalogowanych...

  1. <?php
  2. if(empty($_SESSION["zalogowany"]))$_SESSION["zalogowany"]=0;
  3. mysql_connect("localhost","root","");
  4.  
  5. if($_SESSION["zalogowany"]!=1){
  6. if(!empty($_POST["login"]) && !empty($_POST["haslo"])){
  7. if(mysql_num_rows(mysql_query("select * from users where login = '".htmlspecialchars($_POST["login"])."' AND haslo = '".htmlspecialchars($_POST["haslo"])."'"))){
  8. echo "Zalogowano poprawnie. ";
  9. $_SESSION["zalogowany"]=1;
  10.  
  11. header("Location: glowna.php?sid");
  12. }
  13. else echo '<font color="red">Podano złe dane!!!</font>';
  14. }
  15. else echo '';
  16. }
  17. else
  18. {
  19. header("Location: glowna.php");
  20.  
  21. }
  22. ?>




Przekieruje mnie do strony gowna.php ale nie moge odczytać loginu.

Proóbowałem coś takiego przed header:

  1. $_SESSION["login"]=$_POST["login"];


ale pewnie to śmieszne.... Kombinowałem co nieco z SESSION_ID() ale bez rezultatów.

Kiedy chce sczytać login pokazuje mi:

  1. Notice: Undefined variable: _SESSION in C:\xampp\htdocs\glowna.php on line 57
  2. Witam: .


Znalazłem poradnik ale pod PDO na tym forum, a tak to jest jakiś kod ale za bardzo już zaawansowany jak dla mnie...
Czy będzie ktoś tak miły i nakieruje troszkę jak poruszać się po wszystkich podstronach jako osoba zalogowana.?
kujol
Jakos nie widzę tego w pliku, ktory podałeś

  1. $_SESSION ["login" ]= $_POST
  2. ["login" ];


a w miejscu gdzie chcesz wyświetlić wartość sesji dajesz

  1. echo $_SESSION ['login'];


Kshyhoo
Po:
  1. $_SESSION["zalogowany"]=1;

Daj:
  1. $_SESSION["login"] = $row['login'];

Czyli wrzuć do sesji login zalogowanego.
Fonev
Ok, nie miałem

w pliku glowna.php

teraz działa zczytywanie loginu na każdej podstronie.

Dzięki za all.
Pozdro!
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.