Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] Problem z sesjami.
Forum PHP.pl > Forum > Przedszkole
tesco12
Witam, napisałem sobie skrypt logowania użytkowników. Wszystko niby działa, loguje się ładnie pobierając dane z bazy. Ale problem jest taki. Gdy się zaloguje to pokazuje mi, że zostałem zalogowany jako jakiś tam login. Jak odświeżę stronę, to też pokazuje. Natomiast, gdy kliknę w przeglądarce ENTER, to wtedy dalej jestem zalogowany, ale niestety nie pokazuje mojego loginu. Jak to naprawić? Proszę o pomoc.

Kod php:
  1. <?
  2.  
  3.  
  4. include 'mysql_connect.php';
  5.  
  6.  
  7. $login = $_POST['login'];
  8. $haslo = $_POST['pass'];
  9. $zapytanie = mysql_query("SELECT * FROM users WHERE login = '$login'");
  10. $rekord = mysql_fetch_array($zapytanie);
  11.  
  12. if(isset($_POST['pass'])) 
  13. if(isset($_POST['login']))
  14. {
  15. if(md5($_POST['pass']) == ''.$rekord['haslo'].'' )
  16. if($_POST['login']==''.$rekord['login'].'')
  17. {
  18. $_SESSION['admin']='ok';
  19.  
  20. }
  21. if($_POST['pass']!=''.$rekord['haslo'].'')
  22. if($_POST['login']!=''.$rekord['login'].'')
  23. {
  24. echo '<div align="center" id="blad"> Podałeś złe hasło lub login...</div>';
  25. }
  26. }
  27.  
  28. if((!isset($_SESSION['admin']) || $_SESSION['admin']!='ok') && $_GET['admin']!='wyloguj')
  29. {
  30. echo '<div id="formularz"><form method="POST" action="logowanie.php">
  31. <p align="center">
  32.  
  33.  <br> <span class="text1">WprowadĽ login oraz hasło, aby się zalogować: </br>
  34. </br>
  35. Login: <input id="inputtext" type="text" name="login" size="20"</br>
  36. Hasło: <input id="inputtext1" type="password" name="pass" size="20"></br>
  37.  <br><input id="inputsubmit1" type="submit" value="Zaloguj się"></span></p>
  38. </form>
  39. </div>';
  40. }
  41.  
  42. if(isset($_GET['p']) && $_GET['p']=='wyloguj')
  43. {
  44. $_SESSION['admin']='';
  45. echo '<div id="formularz" align="center"><p>Zostałeś pomyślnie wylogowany...<br></br></diV>';
  46. }
  47. if($_SESSION['admin']=='ok')
  48. {
  49.  
  50. ?>
  51.  
  52. <a href="?p=wyloguj">Wyloguj się</a> 
  53.  
  54.  
  55.  
  56. <?php
  57.  
  58.  
  59. $data=date('d.m.Y, H:i');
  60. $ip=$_SERVER['REMOTE_ADDR'];
  61.  
  62.  
  63.  
  64. echo '<span class="text1">Zostałeś zalogowany jako:<b> '.$rekord['login'].'</b></p>'; 
  65. echo '<br/>';
  66. echo '<u>Twoje IP to : '.$ip.'</u></span>';
  67. echo '<span class="komunikat"><p> Dzisiaj jest: '.$data.'</p></span>';
  68.  
  69.  
  70.  }
  71.  
  72.  ?>
  73.  
  74. </div>
  75. </html>
  76. </body>
lubomir1973
Nie ma fragmentu odczytującego bazę SQL, trzeba zrobić zapytanie o rekord
tesco12
  1. <?php
  2. $zapytanie = mysql_query("SELECT * FROM users WHERE login = '$login'");
  3. ?>


A to niby co?

BTW. Już sobie poradziłem.
  1. <?php
  2. $login = isset($_SESSION['login']) ? $_SESSION['login'] : $_POST['login'];
  3. ?>
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.