ďťż
Podstrony
|
telcocafeWitam.Mam mały problem odnośnie identyfikatora sesji. Jest on przechowywany w coockie lub w stałej PHP - SID. Strona1 (www.urlstrony.com[Logowanie]) <- Rejestracja identyfikatora sesji. Strona2 (nowe okno) <- Sprawdzenie czy użytkownik jest zalogowany. Problem polega na tym że kiedy URL to nie www.urlstrony.com tylko http://urlstrony.com PHP tworzy nowe coockie z inną sesją, zamist użyć poprzednio stowrzonego. Poniżej jest pokazane o co mi chodzi. W przeglądarce cooki są dwa cookiesy z tej samej strony ale z innymi zmiennymi sesyjnymi. Przeglądarka ciastek w FF Chciałbym się dowiedzieć czy mogę zmusić jakoś PHP żeby przesłał mi id sesji przez URL, a potem zmusić skrypt w Strona2 żeby odczytywał SID'a z URL, nawet jeśli obsługa cookie byłaby włączona. Ewentualnie jeśli nie ma takiej możliwości. Chciałbym się dowiedzieć jak mogę pograć dokładny URL strony żebym mógł wstawić go w funkcje Javascript otwierającą nowe okno, żeby mi się nie tworzyły nowe ciasteczka. Przepraszam za sposób swojej wypowiedzi bo prawdopodonie prostą sprawe bardzo pogmatwałem. Uprzejmie proszę o odpowiedź i pozdrawiam. Użytkownik orglee edytował ten post 19 lipiec 2006, 13:58 Jeśli dobrze zrozumiałem to chodzi o to aby adres URL miał postać: www.jakasstrona.com?PHPSESSID=id_sesji ? Jeśli tak to musisz ustawić w php.ini wpis session.use_trans_sid na 1 IMHO lepiej to zrobić tak: należy pobrać ID sesji za pomoca funkcji session_id() i wrzucić do jakiegoś ukrytego pola typu hidden i z niego odczytywać odpowiednie dane ,wtedy url lepiej będzie wyglądał i te dane będą niewidoczne ;) To się może przydać jak będziesz chciał przesyłac dane post bez użycia formularza ;) Użytkownik .:DzIuDek:. ™ edytował ten post 19 lipiec 2006, 15:40 Dokładnie chodzi o to że PHP zapisując sesje w cookie, zapisuje je pod nazwą domenową mojej strony www. To zaczy że jeśli ktoś wpisze w przglądarce, mojastrona.com bez www utworzy się cookie o nazwie mojastrona.com i na stronie gdzie chcę wywołać sesję php podaje w URLu do tego noego okienka adres www.mojastrona.com, ale nie wiem przecież jak użytkownik wywoła moją strone i czy wpisze z www czy bez. Przez to nie wiem też o jakiej nawie cooki będzie istaniało w przeglądarce użytkownika. Poradziłem sobie z tym inaczej. Jak się zazwyczaj okazuje najprostsze rozwiązania są najlepsze. Z URL'a otwierającego nowe okno usunęłem adres strony czyli: zamiast javascript noweOkno('www.mojastrona.com/noweOkno.php?arg&arg2') jest javascript noweOkno('noweOkno.php?arg&arg2') i działa. Dowiedziałem się również że można kontrolować pod jaką nazwą, zostanie zapisane cooki z identyfikatorem sesji. Można to ustawić za pomocą funkcji: session_set_cookie_params() Link Którą trzeba wywołać przed funkcją start_session() Pzdr. |
|||
Sitedesign by AltusUmbrae. |