Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Sesje nie działają w IE
115750
post
Post #1





Grupa: Zarejestrowani
Postów: 117
Pomógł: 0
Dołączył: 7.06.2004
Skąd: Poznań

Ostrzeżenie: (0%)
-----


Zrobiłem sobie prosty mechanizm logowania oparty o sesje. Wszystko działa ładnie ale tylko w FF.
W IE sesja nie przechodzi między stronami.
Dane z pliku login.php nie trafiają już do index.php.
Funkcja print_r($_SESSION) umieszczona w index.php zwraca pusty wynik.
Czy ja coś tu robię źle?

Mechanizm wygląda następująco:

plik index.php
  1. <?
  2. if (!isset($_SESSION['logged']) || $_SESSION['logged']!=1 || !isset($_SESSION['user']))
  3. {
  4. header('Location: login.php');
  5. die; // dla pewności :)
  6. }
  7.  
  8. require('head.inc.php');
  9.  
  10. ?>
  11.  
  12. <center><br>
  13. Treść strony w html
  14. </center>


login.php
  1. <?
  2.  
  3. if (isset($_POST['przycisk']))
  4. {
  5. require_once('db_open.inc.php'); // Nawiązanie połączenia z B.D.
  6.  
  7. // Wysyłanie zapytania SQL
  8. $zapytanie = sprintf("SELECT * FROM users WHERE login='%s' AND password='%s'", $_POST['user'], md5($_POST['pass']));
  9. $wynik = db_query($zapytanie);
  10.  
  11. if (mysql_num_rows($wynik)!= 1)
  12. error_p('Błędna nazwa użytkownika lub hasło.', 1);
  13. else
  14. {
  15. $wiersz = mysql_fetch_assoc($wynik);
  16.  
  17. $_SESSION['logged'] = 1;
  18. $_SESSION['uid'] = $wiersz['id'];
  19. $_SESSION['user'] = $wiersz['name'].' '.$wiersz['surname'];
  20. }
  21.  
  22. // Rozłączanie
  23. mysql_close($link);
  24.  
  25. // Przekierowanie na stronę główną
  26. header("Location: index.php");
  27. }
  28.  
  29. ?>
  30. <form action="login.php" method="post">
  31. <table>
  32. <tr><td>Użytkownik:</td><td><input type="text" name="user" style="width: 110px"></td></tr>
  33. <tr><td>Hasło:</td><td><input type="password" name="pass" style="width: 110px"></td></tr>
  34. <tr><td colspan="2" align="right"><input type="submit" name="przycisk" value="Zaloguj"></td></tr>
  35. </table>
  36. </form>
  37. </center>
Go to the top of the page
+Quote Post
nospor
post
Post #2





Grupa: Moderatorzy
Postów: 36 561
Pomógł: 6315
Dołączył: 27.12.2004




Na dobrą sprawę sesje są niezależne od przeglądarki.

Włącz wyświetlanie wszystkich błędów a może dowiemy się o paru błędach. Tu masz napisane jak:
Temat: Jak poprawnie zada pytanie
Go to the top of the page
+Quote Post
115750
post
Post #3





Grupa: Zarejestrowani
Postów: 117
Pomógł: 0
Dołączył: 7.06.2004
Skąd: Poznań

Ostrzeżenie: (0%)
-----


Cytat(nospor @ 6.11.2012, 15:49:57 ) *
Na dobrą sprawę sesje są niezależne od przeglądarki.

Też tak myślałem.

Cytat(nospor)
Włącz wyświetlanie wszystkich błędów a może dowiemy się o paru błędach. Tu masz napisane jak:
Temat: Jak poprawnie zada pytanie

Wszystkie komunikaty są włączone ale nie pojawia się żaden błąd.

var_dump($_SESSION) zwraca array(0) {}.

Zapomniałem dodać jedną rzecz, chyba ważną.
Skrypty testuję na komputerze lokalnym. Gdy wywołuję ją przez localhost wszystko działa.
Problem pojawia się dopiero wtedy gdy próbuję wejść przez nazwę komputera.
Go to the top of the page
+Quote Post
Sebek87
post
Post #4





Grupa: Zarejestrowani
Postów: 74
Pomógł: 24
Dołączył: 21.10.2012
Skąd: Puławy

Ostrzeżenie: (0%)
-----


Daj na początku w login.php buforowanie:
Go to the top of the page
+Quote Post
115750
post
Post #5





Grupa: Zarejestrowani
Postów: 117
Pomógł: 0
Dołączył: 7.06.2004
Skąd: Poznań

Ostrzeżenie: (0%)
-----


Cytat(Sebek87 @ 6.11.2012, 16:05:01 ) *
Daj na początku w login.php buforowanie:

Dałem ale nic nie pomogło.

Czy to może być problem z konfiguracją apache'a albo php?
Na innym serwerze tego problemu nie ma.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 24.12.2025 - 04:47