Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [problem] sesja, logowanie
Forum PHP.pl > Forum > PHP
Gwozdyk
Mam problem z logowaniem. Jaki¶ czas temu tworzyłem serwis internetowy. Chciałem powrócić do prac nad nim. Zainstalowałem Apache, PHP, MySQL na swoim nowym komputerze. Skopiowałem skrypty. Jednak nie wszystko działa tak jak powinno. Podczas próby logowania do serwisu, po podaniu nazwy użytkownika, hasła niby wszystko jest ok. Pisze, że użytkownik X został zarejestrowany, jednak gdy od¶wieżam stronę jestem już niezalogowany. Nie wiem gdzie leży problem.
pyro
Cytat(Gwozdyk @ 31.10.2008, 16:14:50 ) *
Mam problem z logowaniem. Jaki¶ czas temu tworzyłem serwis internetowy. Chciałem powrócić do prac nad nim. Zainstalowałem Apache, PHP, MySQL na swoim nowym komputerze. Skopiowałem skrypty. Jednak nie wszystko działa tak jak powinno. Podczas próby logowania do serwisu, po podaniu nazwy użytkownika, hasła niby wszystko jest ok. Pisze, że użytkownik X został zarejestrowany, jednak gdy od¶wieżam stronę jestem już niezalogowany. Nie wiem gdzie leży problem.


czy tak sie dzieje na roznych przegladarkach? pokaz kod tego skryptu logowania.
Gwozdyk
sprawdzalem na Firefox i IE
funkcja logowania:
  1. <?php
  2. $baza=$this->PolaczZBazaDanych();
  3. $zapytanie="select * from konta where login='".$uzytkownik."' and haslo='".$haslo."'";
  4. $wynik=$baza->query($zapytanie);
  5. if($wynik->num_rows>0)
  6. {
  7. $_SESSION['login']=$uzytkownik;
  8. $zapytanie="select nazwa from postacie where login='".$uzytkownik."'";
  9. $wynik=$baza->query($zapytanie);
  10. if($wynik->num_rows>0)
  11. {
  12. $postac_gracza=$wynik->FETCH_ASSOC();
  13. $_SESSION['postac']=$postac_gracza['nazwa'];
  14. }
  15. $zapytanie="select * from konta where login='".$uzytkownik."' and haslo='".$haslo."' and admin='1'";
  16. $wynik=$baza->query($zapytanie);
  17. if($wynik->num_rows>0)
  18. $_SESSION['admin']=1;
  19. else
  20. $_SESSION['admin']=0;
  21. }
  22. else
  23. {
  24. echo '<div align="center">Zalogowanie bylo niemozliwe. Podany login lub haslo sa nieprawidlowe!';
  25. echo '<a align="center" href="logowanie.php">Sproboj ponownie</a></div>';
  26. }
  27. $wynik->free();
  28. $baza->close();
  29. ?>


sprawdzenie zalogowania przy odswierzeniu:
  1. <?php
  2. if(isset($_SESSION['login']))
  3. {
  4. ...
  5. }
  6. ?>


na poczatku strony uzyta jest funkcja 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.