![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 293 Pomógł: 4 Dołączył: 28.01.2005 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
Temat może trochę wydawać się zdradliwy ale zaraz powiem o co chodzi. Od 2 godzin, walczę z pewnym debilizmem, i ogołociłem skrypt który napisałem, teraz do zera ( tak wiem głupia metoda, najpierw napisać, potem sprawdzić czy działa), tak wiec rozebrałem go... i doszedłem gdzie jest problem. Problem jest w tym. W ogóle koncepcja przyjmuje że identyfikator sesji pobierany jest przez POST i wykonywany w kontekście serwera a nie użytkownika. ( dla tego nie jest pobierany z Cookies) Więc mamy kod który odbiera ten PHPSSID. ( to działa poprawnie ) a potem funkcja przypisania PHPSSID ( też działa poprawnie )
Wykonałem sobie kontrolę printując do pliku zawartość POST oraz ZAINSTALOWANEJ sesji:
100 % zgodności ! czyli sesja ustawiona poprawnie. A dostępu do danych nie mam ! :/ Dałem w ramach analizy:
I nic.... nic nie dumpuje... pustka ! Jeżeli sesja jest ustawiona poprawnie, to jakim cudem może mi nie wyświetlać zawartości na serwerze... to moja sesja gdzie mam kilka wartości zapisanych, mój, id, login itp :/ (wszystko dumpuje do pliku .txt takim kodem ) ( nie jest on czescia kodu właściwego, to tylko narzędzie diagnostyczne)
|
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 78 Pomógł: 5 Dołączył: 15.04.2006 Ostrzeżenie: (10%) ![]() ![]() |
fajnie ze utworzyles sesje ale zeby miec dostep do pewnych danych trzeba tez pewne zmienne w tablicy sesji ustawic
najprosciej po inicjalizacji sesji, np:
i wtedy dopiero wszedzie gdzie tresc jest niedostepna dla niezalogowanych musisz dac warunek
Ten post edytował shine 21.04.2009, 06:27:41 |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 293 Pomógł: 4 Dołączył: 28.01.2005 Ostrzeżenie: (0%) ![]() ![]() |
Nie zrozumiałeś mnie.
To sesja użytkownika, który siedzi na stronie www, i jest zalogowany. W tym wypadku ja, i mam te dane w sesji, wpisane... Inicjuje te sesje w osobnym pliku, wykonuje z poziomu flasha (SWF_UPLOAD), i kicha... To nie wina SWF upload, bo sesja jest inicjowana, i to w dodatku poprawnie... Ale nie mam danych, które są przypisane do sesji ! Więc potrzebuję pomocy... Wiesz, mam dane w sesji, inicjuje ją, i nie mam tych danych które w innym pliku, cały czas mam ! Cały czas jestem zalogowany, mam stan OK, failed, wszystkie wpisy,w normalnym skrypcie działają poprawnie. A kiedy wywołam je w innym pliku, to już fail... nie mam dostępu... Nie mam pojęcia czego to jest wina. Mówię, głupieje, idiotyzm tego powoduje iż pragnę sądzić że to jakiś błąd :/ |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 78 Pomógł: 5 Dołączył: 15.04.2006 Ostrzeżenie: (10%) ![]() ![]() |
mi czasami w takich przypadkach pomagalo odpalanie we wszystkich includowanych plikach session_start() pomimo tego ze bylo juz w glownym
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 293 Pomógł: 4 Dołączył: 28.01.2005 Ostrzeżenie: (0%) ![]() ![]() |
Ale to nie includowany plik.
STRONA GŁOWNA -> include podstrony UPLOAD ( na podstronie UPLOAD mam formularz we flashu, wysyłający plik, do pliku STAND ALONE ( sam plik, zwykły, nie includowany, sam, solo, nic, bez niczego, bez dodatków ) więc formularz wywołuje plik ./upload.php Tak wywołany plik, nie będzie miał SESJI użytkownika. Więc w formularzu flash, w polu PHPSSID wygenerowałem identyfikator usera. session_id(); I taki identyfikator wysłałem, wraz ze plikiem (wgrywanym) do pliku -> upload.php upload.php odbiera identyfikator session_id(); i ustawia go, jako właściwy dla tej sesji. Dzięki temu, powinienem móc zweryfikować czy użytkownik, ma prawo wgrywać pliki, czy nie. To logiczne chyba, że zabezpieczenie musi być po stronie serwera, bo inaczej ktoś by zrobił własny formularz i by ominął wszystko. Dla tego to jest wymagane, żebym uzyskał dostęp do tej sesji... tak żebym mógł tam wykonać operacje w stosunku do użytkownika. Proszę o pomoc ! ---------------------------------------------------- ---------------------------------------------------- Witam ponownie, Od rana siedzę, nad ustaleniem miejsca problemu. Doszedłem do następującego wniosku, że chyba źle przypisuje sesję. Proszę spojrzeć, utworzyłem następujący kod: (IMG:http://www.bankfotek.pl/thumb/223021.jpeg) Na sztywno przypisuje identyfikator sesji, który posiadam. Oto efekt. W Firefoksie, ten identyfikator sesji, znajduje się w cookies ( działa ) w operze, gdzie identyfikatora sesji nie ma w cookies, ale przypisuje go TYM SAMYM kodem, potwierdza mi przypisanie, ale tablica jest pusta. (IMG:http://www.bankfotek.pl/thumb/223023.jpeg) Z cookies działa, z session_id(identyfikator) nie działa już :/ |
|
|
![]()
Post
#6
|
|
Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów ![]() |
A jeśli robisz z ciastkami, to w którym miejscu ustawiasz? Tzn. ścieżka do skryptu ustawiającego; patrz: session_set_cookie_params" title="Zobacz w manualu PHP" target="_manual.
|
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 293 Pomógł: 4 Dołączył: 28.01.2005 Ostrzeżenie: (0%) ![]() ![]() |
Ale ja nie chce w ogóle ciasteczek.
Ten plik, ma się wykonać względem sesji którą prześle POST-em, niezależnie jaka będzie treść PHPSSID w cookies. Siedzę już nad tym, kilka godzin...
Takie coś działa poprawnie pod IE8. Pod firefoksem nie widzi sesji... Ktoś mnie będzie miał na sumieniu.,, :/ |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 143 Pomógł: 17 Dołączył: 8.11.2008 Skąd: Libiąż Ostrzeżenie: (0%) ![]() ![]() |
A co z akceptowaniem sesji spoza cookie? Jest takie zabezpieczenie serwera, może jest włączone?
|
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 293 Pomógł: 4 Dołączył: 28.01.2005 Ostrzeżenie: (0%) ![]() ![]() |
Mam confignięte tak:
Kod ; Whether to use cookies. session.use_cookies = 1 ;session.cookie_secure = ; This option enables administrators to make their users invulnerable to ; attacks which involve passing session ids in URLs; defaults to 1. session.use_only_cookies = 1 ; Name of the session (used as cookie name). session.name = PHPSESSID ; Initialize session on request startup. session.auto_start = 0 ; Lifetime in seconds of cookie or, if 0, until browser is restarted. session.cookie_lifetime = 1296000 ; The path for which the cookie is valid. session.cookie_path = / ; The domain for which the cookie is valid. session.cookie_domain = ; Whether or not to add the httpOnly flag to the cookie, which makes it inaccessible to browser scripting languages such as JavaScript. session.cookie_httponly = ; Handler used to serialize data. php is the standard serializer of PHP. session.serialize_handler = php Jak widzisz dla wszystkich domen poprawne, httponly brak :/ domaina brak :/ normalnie nie wiem :/ |
|
|
![]()
Post
#10
|
|
Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów ![]() |
A session.use_trans_sid?
Cytat Ale ja nie chce w ogóle ciasteczek. Masz jakiś argument? |
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 293 Pomógł: 4 Dołączył: 28.01.2005 Ostrzeżenie: (0%) ![]() ![]() |
TRANS - jest do przekazywania urlem phpssida.
po GECIE... dla non cokie browserów. My tu mówimy o innej sprawie... |
|
|
![]() ![]() |
![]() |
Aktualny czas: 16.09.2025 - 00:31 |