![]() |
![]() ![]() |
![]() |
![]() ![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 21 Pomógł: 0 Dołączył: 22.05.2003 Skąd: Kłodzko / Wrocław / Droszków ... Ostrzeżenie: (0%) ![]() ![]() |
Witam.
Mam dziwny problem z Google Chrome. W dwóch plikch index.php i admin.php sa tworzone sesje. Po wylistowaniu tablic we wspomnianych plikach i nawet wielokrotnym odświezeniu, zakładka index.php wyświetla z tablicy $_SESSION Array ( [ile] => 12 ) zakładka admin.php wyświetla z tablicy $_SESSION Array ( [logo] => ok ) To samo z tablicą $_COOKIE. W Firefox i Opera zakładki widza wszystkie zmienne z tablic globalnych. Array ( [ile] => 12 [logo] => ok ) Wygląda to jakby Chrome traktował zakładki jak osobne okna/przegladarki tudziesz osobne tablice sesji dla kart? Ktoś wie o co chodzi z tym Chromem? (IMG:style_emoticons/default/oneeyedsmiley02.png) Liczę na Waszą pomoc. Ten post edytował Krokodyl 28.10.2013, 23:22:59 |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 1 933 Pomógł: 460 Dołączył: 2.04.2010 Skąd: Lublin Ostrzeżenie: (0%) ![]() ![]() |
Jakbyś jeszcze przedstawił mechanizm tworzenia zmiennych sesyjnych?
Próbowałeś coś takiego? Plik index.php:
Plik admin.php:
I przejdź teraz z indexu do admin i zobacz co się wyświetli. Dodatkowo porównaj session_key() na stronie index i admin. Ten post edytował b4rt3kk 28.10.2013, 23:23:41 |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 21 Pomógł: 0 Dołączył: 22.05.2003 Skąd: Kłodzko / Wrocław / Droszków ... Ostrzeżenie: (0%) ![]() ![]() |
Zmienne sa tworzone tak jak podałeś.
Zrobiłem jak napisałeś i mam taki wynik po logowaniu po przejściu do index.php faktycznie widać w tablicy $_SESSION obie zmienne. Mam dwa pytania 1. Jak 'załadować' zmienne do $_SESSION bez 'printowania' [ przez var_export() ? ] 2. Dlaczego Chrome wymaga takiej specjanej troski? Trochę to chore. Reszta przeglądarek, których używam czyta tablie $_SESSION bez takich zabiegów. Ten post edytował Krokodyl 28.10.2013, 23:56:41 |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 1 933 Pomógł: 460 Dołączył: 2.04.2010 Skąd: Lublin Ostrzeżenie: (0%) ![]() ![]() |
Domyślam się, że tworzysz zmienne sesyjne bez wystartowania sesji? To raczej reszta przeglądarek nie trzyma standardów w tym zakresie, skoro przechowuje zmienne, mimo braku zainicjowania sesji. Przedstaw swój pierwotny kod.
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 21 Pomógł: 0 Dołączył: 22.05.2003 Skąd: Kłodzko / Wrocław / Droszków ... Ostrzeżenie: (0%) ![]() ![]() |
Zmienne sa tworzone tak jak podałeś. Napisałem to wyżej. Czyli
Po co miałbym używać sesji bez jej wcześniejszej inicjacji? W obu plikach sesja startuje w pierwszej lini z require('cfg.php') To samo jest z $_COOKIE. Jedna zakładka widzi swoje zmienne inna swoje. Jakbyś używał dwóch przeglądarek w dwóch plikach. Ten sam schemat co w $_SESSION. Jak to wytłumaczysz dla Google Chrome? To jest pytanie kluczowe. Ten post edytował Krokodyl 29.10.2013, 01:13:26 |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 217 Pomógł: 21 Dołączył: 10.06.2011 Skąd: Głogów Ostrzeżenie: (0%) ![]() ![]() |
Też miałem problemy ze startem sesji z innych plików, też nikt mi nie odpowiedział.
Dokładniej to importowałem klase z pliku, w niej włączałem session_start lecz odczyt w innych miejscach był niemożliwy. Alternatywą stało się użycie przed każdą funkcja wymagajaca sesji, session_start() i na koncu session_write_close() Spróbuj przed session_start przestawić ustawienia Cytat Mam dwa pytania 1. Jak 'załadować' zmienne do $_SESSION bez 'printowania' [ przez var_export() ? ] 2. Dlaczego Chrome wymaga takiej specjanej troski? Trochę to chore. Reszta przeglądarek, których używam czyta tablie $_SESSION bez takich zabiegów. 1. Załadować, czyli ustawić zmienną? "$_SESSION['ile'] = 12;", dodatkowo polecam do var_dumpa wyprintować tag <pre> i po </pre> zamienia PHP_EOL na <br>(taki mała pomoc ;p) 2. Zawsze to firefox był specjalnej troski ze względu że nie jest komercyjnym projektem. Jakie zabiegi masz na myśli? 3. Powiedz mi jaki masz serwer? Nie przypadkiem lighttpd? |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 21 Pomógł: 0 Dołączył: 22.05.2003 Skąd: Kłodzko / Wrocław / Droszków ... Ostrzeżenie: (0%) ![]() ![]() |
ZNALAZŁEM!
Mój bład! (IMG:style_emoticons/default/facepalmxd.gif) Ładowałem cfg.php (gdzie jest start sesji) przez require_once() i zmieniłem na require() Wygląda na to, że narobiłem niepotrzebnego zamieszania. Ale kilka interesujących rzeczy się nauczyłem! Dziękuje za pomoc. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 23.08.2025 - 18:33 |