Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] sesja utracona
Forum PHP.pl > Forum > Przedszkole
AsenClave
Nie wiem, dlaczego tak sie zachowuje :/

Testy prosze przeprowadzac pod tym adresem (jest tez zaladowany phpinfo(); ) http://195.211.2.7/

Konto probne: login(test) passwd(test)

A tu kod strony:
  1. <?php
  2.  
  3. echo '<div>Test kroju czcionki</div>';
  4.  
  5. mysql_connect( '/hide/', '/hide/', '/hide/ ' );
  6. mysql_select_db( '/hide/' );
  7.  
  8. if ( $_SESSION['auth'] != 1 ) $_SESSION['auth'] = false;
  9.  
  10. if ( strlen( $_POST['login'] ) && strlen( $_POST['passwd'] ) ) login( $_POST['login'], $_POST['passwd'] );
  11.  
  12. function login( $login, $passwd ) {
  13. $login = md5( $login );
  14. $passwd = md5( $passwd );
  15.  
  16. $query = mysql_query( "SELECT * FROM `account` WHERE `login`='$login' AND `passwd`='$passwd' LIMIT 1" );
  17.  
  18. if ( $mysql_num_rows( $query ) ) {
  19. $row = mysql_fetch_array( $query );
  20.  
  21. $_SESSION['auth'] = true;
  22.  
  23. $_SESSION['account-id'] = $row['id'];
  24. $_SESSION['account-name'] = $row['name'];
  25. $_SESSION['account-email'] = $row['email'];
  26. }
  27. }
  28.  
  29. /*
  30. $login = md5( 'test' );
  31. $passwd = md5( 'test' );
  32. $name = 'Test';
  33. $email = 'test@test.test';
  34. $data = time();
  35.  
  36. mysql_query( "INSERT INTO `account` VALUES ( NULL, '$login', '$passwd', '$name', '$email', '$data' )" );
  37. */
  38. ?>
  39. <meta http-equiv="content-type" content="text/html; charset=utf-8">
  40. <style type="text/css">
  41. * { font-family: "DejaVu Sans", Verdana; font-size: 13px; color: #777777; }
  42.  
  43. input, textarea { border: 1px solid #dddddd; background-color: #eeeeee; }
  44. form { margin: 0px; padding: 0px; }
  45.  
  46. .package { width: 780px; margin: 0px auto; }
  47. .login { width: 140px; margin: 0px auto; }
  48.  
  49. .align-right { text-align: right; }
  50. .align-center { text-align: center; }
  51.  
  52. .width-90 { width: 90%; }
  53.  
  54. .move-little-lower { margin-top: 2px; }
  55. </style>
  56. <div>Test kroju czcionki</div>
  57. <div class="package">
  58. <?php
  59. if ( ! $_SESSION['auth'] ) include( 'login.htm' );
  60. else
  61. echo 'ok.';
  62.  
  63. ?>
  64. </div>


  1. <div class="login">
  2. <form action="index.php" method="post">
  3. <div class="">Login:</div>
  4. <div class="align-right"><input class="align-center width-90" type="text" name="login" value="" /></div>
  5. <div class="">Password:</div>
  6. <div class="align-right"><input class="align-center width-90" type="password" name="passwd" value="" /></div>
  7. <div class="align-right"><input class="move-little-lower" type="submit" value="Accept" /></div>
  8. </form>
  9. </div>
daros17
Nie jestem pewien czy to zadziała, ale na początku dodaj
  1. if(isset($_SESSION['login'])) {
  2. echo'Jestes zalogowany';
  3. } else {
  4. //dalsza cześć kodu
AsenClave
Cytat(daros17 @ 13.11.2010, 21:51:01 ) *
Nie jestem pewien czy to zadziała, ale na początku dodaj
  1. if(isset($_SESSION['login'])) {
  2. echo'Jestes zalogowany';
  3. } else {
  4. //dalsza cześć kodu


Poprawilem na odpowiednik bo zmiennej $_SESSION['login'] nie posiadam;

  1. <?php
  2.  
  3. if ( isset( $_SESSION['account-name'] ) ) echo 'zalogowany';
  4. else {
  5. echo '<div>Test kroju czcionki</div>';
  6.  
  7. mysql_connect( '127.0.0.1', 'root', 'uX25acT35#' );
  8. mysql_select_db( 'dreamer' );
  9.  
  10. if ( $_SESSION['auth'] != 1 ) $_SESSION['auth'] = false;
  11.  
  12. if ( strlen( $_POST['login'] ) && strlen( $_POST['passwd'] ) ) login( $_POST['login'], $_POST['passwd'] );
  13.  
  14. function login( $login, $passwd ) {
  15. $login = md5( $login );
  16. $passwd = md5( $passwd );
  17.  
  18. $query = mysql_query( "SELECT * FROM `account` WHERE `login`='$login' AND `passwd`='$passwd' LIMIT 1" );
  19.  
  20. if ( $mysql_num_rows( $query ) ) {
  21. $row = mysql_fetch_array( $query );
  22.  
  23. $_SESSION['auth'] = true;
  24.  
  25. $_SESSION['account-id'] = $row['id'];
  26. $_SESSION['account-name'] = $row['name'];
  27. $_SESSION['account-email'] = $row['email'];
  28. }
  29. }
  30.  
  31. /*
  32. $login = md5( 'test' );
  33. $passwd = md5( 'test' );
  34. $name = 'Test';
  35. $email = 'test@test.test';
  36. $data = time();
  37.  
  38. mysql_query( "INSERT INTO `account` VALUES ( NULL, '$login', '$passwd', '$name', '$email', '$data' )" );
  39. */
  40. ?>
  41. <meta http-equiv="content-type" content="text/html; charset=utf-8">
  42. <style type="text/css">
  43. * { font-family: "DejaVu Sans", Verdana; font-size: 13px; color: #777777; }
  44.  
  45. input, textarea { border: 1px solid #dddddd; background-color: #eeeeee; }
  46. form { margin: 0px; padding: 0px; }
  47.  
  48. .package { width: 780px; margin: 0px auto; }
  49. .login { width: 140px; margin: 0px auto; }
  50.  
  51. .align-right { text-align: right; }
  52. .align-center { text-align: center; }
  53.  
  54. .width-90 { width: 90%; }
  55.  
  56. .move-little-lower { margin-top: 2px; }
  57. </style>
  58. <div>Test kroju czcionki</div>
  59. <div class="package">
  60. <?php
  61. if ( ! $_SESSION['auth'] ) include( 'login.htm' );
  62. else
  63. echo 'ok.';
  64.  
  65. ?>
  66. </div>
  67. <?php
  68. }
  69. ?>



i nic nie dalo...
daros17
W pierwszym poście napisałeś, że konto testowe to test|test wpisując np 1|1 to i tak pokaże mi napis Test kroju czcionki
AsenClave
Cytat(daros17 @ 13.11.2010, 22:04:29 ) *
W pierwszym poście napisałeś, że konto testowe to test|test wpisując np 1|1 to i tak pokaże mi napis Test kroju czcionki


Zrob w ten sposob, otworz nowa zakladke (przegladarke) zaloguj sie, nastepnie kliknij na adres strony i nacisnij [ENTER] i powroci do logowania spowrotem.
Powinno pokazac dwa takie same zdania, a jest jedno po zalogowaniu, a dwa po odswiezeniu strony + panel logowania.

Pewnie zauwazyles tez ze kroj czcionki sie zmienia, tak jakby CSS nie zaladowalo po zalogowaniu.
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.