Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] Sesja znika ...
Forum PHP.pl > Forum > Przedszkole
Wieczny
Siemka mam problem. Gdy odświeżam stronę sesja przestaje działać w taki sposób że znikają wszystkie możliwości nie pojawia się ani że user jest zalogowany ani że wylogowany no znika po prostu ten element
  1. <?php
  2. <div id='login'><font color='red' size='6'>Login</font><br>
  3. <form action='index.php' method=post>
  4. Userlogin: <input class='input' type='text' name='login'><br>
  5. Password: <input class='input' type='password' name='pw'><br>
  6.  
  7.  
  8.  <input type='hidden' name='zalogowany' value='1'>
  9.  <input class='input' type=submit value='Zaloguj!'>
  10. </form>
  11. </div>
  12. ?>

  1. <?php
  2.  
  3.  
  4. $result = mysql_query("SELECT id, login
  5.  FROM user
  6.  WHERE login='".($_POST['login'])."'");
  7.  
  8.  $row = mysql_fetch_array($result);
  9.  
  10.  
  11. if($_GET["wyloguj"]=="tak"){$_SESSION["zalogowany"]=0;echo "Zostałeť wylogowany z serwisu";}
  12. if($_SESSION["zalogowany"]!=1){
  13.  if(!empty($_POST["login"]) && !empty($_POST["pw"])){
  14. if(mysql_num_rows(mysql_query("select * from user where login = '".$_POST["login"]."' AND pw = '".$_POST["pw"]."'"))){
  15. echo "<div id='login'>Zalogowano poprawnie ".$_POST['login']."</div>";
  16. $_SESSION["zalogowany"]=1;
  17. }
  18. else echo ("
  19.  
  20.  
  21.  
  22. <div id='login'>
  23. Podano Zle dane !!!
  24. <font color='red' size='6'>Login</font><br>
  25. <form action='index.php' method=post>
  26. Userlogin: <input class='input' type='text' name='login'><br>
  27. Password: <input class='input' type='password' name='pw'><br>
  28.  
  29.  
  30.  <input type='hidden' name='zalogowany' value='1'>
  31.  <input class='input' type=submit value='Zaloguj!'>
  32. </form>
  33. </div>
  34.  
  35.  
  36.  
  37.  
  38.  
  39.  
  40. ");
  41. }
  42. else
  43. {
  44. <div id='login'><font color='red' size='6'>Login</font><br>
  45. <form action='index.php' method=post>
  46. Userlogin: <input class='input' type='text' name='login'><br>
  47. Password: <input class='input' type='password' name='pw'><br>
  48.  
  49.  
  50.  <input type='hidden' name='zalogowany' value='1'>
  51.  <input class='input' type=submit value='Zaloguj!'>
  52. </form>
  53. </div>";
  54.  
  55. }
  56.  
  57. }
  58. else 
  59.  
  60. $now = time();
  61.  
  62.  if (!isset($_SESSION['start']))
  63. {
  64.  $_SESSION['start'] = $now;
  65. }
  66.  elseif ($_SESSION['start'] < $now - 1800)
  67. {
  68. echo "<div id='login'>Ze wzgledów bespieczenstwa zostales wylogowany !</div>";
  69. }
  70.  
  71. ?>
Krakier
Sesja jest, tylko prostu w tym skrypcie element logowania został ukryty jeżeli user został już zalogowany ;]. Przekształciłem nieco skrypt, aby wyświetlał informacje jeśli $_SESSION['zalogowany']==1 ;]. (PS dorzuciłem także nową zmienną $_SESSION['login'] aby było wiadomo pod jakim nickiem gościu został zalogowany).
  1. <?php
  2.  
  3.  
  4. $result = mysql_query("SELECT id, login
  5.  FROM user
  6.  WHERE login='".($_POST['login'])."'");
  7.  
  8.  $row = mysql_fetch_array($result);
  9.  
  10.  
  11. if($_GET["wyloguj"]=="tak"){$_SESSION["zalogowany"]=0;echo "Zostałeť wylogowany z serwisu";}
  12. if($_SESSION["zalogowany"]!=1){
  13.  if(!empty($_POST["login"]) && !empty($_POST["pw"])){
  14. if(mysql_num_rows(mysql_query("select * from user where login = '".$_POST["login"]."' AND pw = '".$_POST["pw"]."'"))){
  15. Header("Location: index.php");
  16. echo "<div id='login'>Zalogowano poprawnie ".$_POST['login']."</div>";
  17. $_SESSION["zalogowany"]=1;
  18. $_SESSION['login']=$_POST['login'];
  19. }
  20. else echo ("
  21.  
  22.  
  23.  
  24. <div id='login'>
  25. Podano Zle dane !!!
  26. <font color='red' size='6'>Login</font><br>
  27. <form action='index.php' method=post>
  28. Userlogin: <input class='input' type='text' name='login'><br>
  29. Password: <input class='input' type='password' name='pw'><br>
  30.  
  31.  
  32.  <input type='hidden' name='zalogowany' value='1'>
  33.  <input class='input' type=submit value='Zaloguj!'>
  34. </form>
  35. </div>
  36.  
  37.  
  38.  
  39.  
  40.  
  41.  
  42. ");
  43. }
  44. else
  45. {
  46. <div id='login'><font color='red' size='6'>Login</font><br>
  47. <form action='index.php' method=post>
  48. Userlogin: <input class='input' type='text' name='login'><br>
  49. Password: <input class='input' type='password' name='pw'><br>
  50.  
  51.  
  52.  <input type='hidden' name='zalogowany' value='1'>
  53.  <input class='input' type=submit value='Zaloguj!'>
  54. </form>
  55. </div>";
  56.  
  57. }
  58.  
  59. }
  60. else 
  61. {
  62. $now = time();
  63.  
  64.  if (!isset($_SESSION['start']))
  65. {
  66.  $_SESSION['start'] = $now;
  67. }
  68.  elseif ($_SESSION['start'] < $now - 1800)
  69. {
  70. echo "<div id='login'>Ze wzgledów bespieczenstwa zostales wylogowany !</div>";
  71. }
  72.  
  73. echo 'WITAM, zostałes zalogowany, twój login: <b>'.$_SESSION['login'].'</b>. <a 
  74.  
  75. href="index.php?wyloguj=tak">WYLOGUJ SIE</a>'; // Coś co się pokaże jeśli zostałeś zalogowany, możesz dorzucić dowolny skrypt;].
  76. }
  77.  
  78. ?>
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.