Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 12 Pomógł: 1 Dołączył: 8.08.2011 Skąd: Poznań Ostrzeżenie: (0%)
|
Witam.
Na początku dodam, że próbowałem już wielu rzeczy i szukałem w wielu źródłach jednak nie znalazłem rozwiązania. 1) Mam skrypt logowania, który nie tworzy mi ciasteczek. Loguje mnie, ale gdy potem wejdę na dowolną podstronę moje ciasteczka i sesje znikają. Gdy zaloguje się za drugim razem wszystko jest już ok. Kod setcookie("CMS-Account-Type",$type,(time+3600*24),"/","http://www.adres.pl"); setcookie("CMS-UserLogin",$user_from_db,(time()+3600*24),"/","http://www.adres.pl"); setcookie("CMS-Unique-ID",md5($user_from_db),(time()+3600*24),"/","http://www.adres.pl"); setcookie("CMS-LoginStatus",true,(time()+3600*24),"/","http://www.adres.pl"); setcookie("CMS-PaybackID",$id_user,(time()+3600*24),"/","http://www.adres.pl"); $actual_adress = $_SERVER['REQUEST_URI']; header( 'refresh:0;url='.$actual_adress); Z tworzeniem sesji jest podobny efekt (IMG:style_emoticons/default/smile.gif) jest ona zapamiętana po przekierowaniu, ale gdy potem ruszę na inną podstronę to już znika. 2) Dodam, że w pliku index.php mam na początku dane Kod ob_start(); session_start(); //Cały kod strony ob_end_flush(); 3) Być może problem też wynika z ustawień htaccess, które mam rozwiązane w ten sposób: Kod RewriteEngine on Options All -Indexes RewriteRule ^.+(includes/.+)$ $1 [L] RewriteRule ^.+(modules/.+)$ $1 [L] RewriteRule ^.+(admin/.+)$ $1 [L] RewriteRule ^.+(klasy/.+)$ $1 [L] RewriteRule ^.+(pliki/.+)$ $1 [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_URI} !.*\.(jpg|png|jpeg) RewriteRule ^.*$ index.php/$1 [L] Próbowałem użyć setcookie z trzema parametrami tj. nazwa,zawartość, data ważności i też bez efektu. Dodatkowe informacje: w ustawieniach php sesion.save_path jest ustawione na /tmp i folder ten istnieje na moim serwerze w pliku public_html z odpowiednio ustawionymi chmodami (do dostępu). Nie wiem czy dział przedszkole to dobry dział, problem jest pewnie banalny jednak nie znalazłem rozwiązania mojej sprawy w związku z czym chcę poradzić się bardziej zaawansowanych użytkowników. Ten post edytował Dyktus 24.03.2014, 10:10:53 |
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Zarejestrowani Postów: 578 Pomógł: 69 Dołączył: 15.04.2007 Skąd: Wrocław Ostrzeżenie: (0%)
|
Jak sprawdzasz istnienie cookie?
Strzelam że nie wiesz jak działa cookie. Więc: Gdy tworzysz cookie za pomocą setcookie to tworzone jest ciasteczko i wysyłane jest ono do użytkownika. Zaś zmienna $_COOKIE jest pobierana przez serwer w momencie zapytania (zanim wykona się kod php). Dlatego gdy dasz setcookie('ciasteczko','wartosc') to zmienna $_COOKIE['ciasteczko'] będzie pusta - serwer gdy był odpytywany nie dostał takiego ciasteczka. Jeśli chcesz od razu korzystać z tego ciasteczka (co jest zbędne bo możesz to mieć w innej zmiennej) to musisz dać oprócz setcoockie kod:
|
|
|
|
Dyktus [PHP]Setcookie tworzy ciasteczka dopiero za drugim razem 24.03.2014, 10:10:19
Dyktus Pamiętam, że jak jeszcze pół roku temu pisałem skr... 24.03.2014, 17:10:40 ![]() ![]() |
|
Aktualny czas: 26.12.2025 - 18:12 |