Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Set cookies dla wszystkich stron
Forum PHP.pl > Forum > PHP
mariolita
Używam wamp server

mam folder główny w którym mam między innymi index.php kontakt.php itd

w głównym folderze mam folder o nazwie phpfile

i w nim plik który ustawia cookies:

setcookie("uzytkownik", "$email", time() + (86400 * 7));

i cookies faktycznie się ustawia ale tylko dla jedego pliku/strony w tym podfolderze phpfile

chciałbym żebym mógł odczytać wartość tego cookie na stronach w folderze głównym

jak to zrobić?
Wazniak96
include
LowiczakPL
Tam gdzie chcesz korzystać z ciastek musisz mieć kod sprawdzający czy ciastko jest czy trzeba je utworzyć

oczywiście kod ten musi być wywołany przed HTMLem

  1. if (isset($_COOKIE['uzytkownik'])) {
  2. // tu jest Twoje Ciastko, jesli chcesz je pobrać $_COOKIE['uzytkownik'];
  3. echo $id_user = $_COOKIE['uzytkownik'];
  4. }
  5. else {
  6. setcookie("uzytkownik", "$email", time() + (86400 * 7));
  7. }
mariolita
dziwne to jest, spróbowałem już wszystkiego, i tylko działa w jednym pliku a przeciez nawet jak biorę include() to powinno pomóc. mega dziwne
zegarek84
Cytat(LowiczakPL @ 9.05.2016, 06:45:40 ) *
oczywiście kod ten musi być wywołany przed HTMLem

nie musi ale o tym za chwilę
Cytat(mariolita @ 11.05.2016, 20:58:04 ) *
dziwne to jest, spróbowałem już wszystkiego, i tylko działa w jednym pliku a przeciez nawet jak biorę include() to powinno pomóc. mega dziwne

przed wysyłaniem jakichkolwiek nagłówków co tyczy się także ciasteczek nie możesz wysłać do przeglądarki żadnej treści... może gdzieś przed php masz spację lub gdzieś na początku pliku BOM (poczytaj)...

a to co wcześniej napisałem możesz jeszcze poczytać o buforowaniu wysyłanych danych - do poczytania funkcja ob_start oraz jej rodzina...

do kodu nie przyglądałem się choć krótki gdyż napisałeś, iż w jakimś pliku Ci to działa...

pozdro

edit ;p - zmienne ustawiaj w sesji a z ciasteczek korzystaj jak ze znacznika sesji...

a jeśli chcesz już zapisywać coś po stronie przeglądarki to poczytaj o JavaScript Locale Storage... pierwszy z brzegu link - nawet tego nie czytałem tylko wzrokowo...
http://www.w3schools.com/html/html5_webstorage.asp
mariolita
nie potrzeba nic w stylu cookies_start() jak w sesji?

ja potrzebuje tego użyć do akceptacji CIASTEK

okienko male na gorze, guzik

w JQUERY po kliknieciu guzik wysyła post do pliku w podfolderze i jeśli post doszedł to ustaw cookie

i fakty że w tym pliku to ciastko jest zapisane

ale mam też na samej górze każdej strony include do strony która znajduje się w podfolderze gdzie jest cos takiego:


if(!isset($_SESSION["nazwaciastka"])) {

echo "TO OKNO O AKCEPTACJI CIASTEK";

}

i w tym pliku działa - cookie ustawiony ale już nie includuje do innych plików

i momo to nie chce zadziałać

A SESJĄ TEGO NIE ZROBIE BO PO ZAMKNIĘCIU PRZEGLADARKI SESJA ZANIKNIE
Arcioch
A czy nie możesz zobaczyć jakie wartości ma funkcja setcookie w manulau smile.gif LINK
Zobacz masz tam zmienna path, która powinna rozwiać Twoje problemy z ciasteczkami w jednym pliku smile.gif

The path on the server in which the cookie will be available on. If set to '/', the cookie will be available within the entire domain. If set to '/foo/', the cookie will only be available within the /foo/ directory and all sub-directories such as /foo/bar/ of domain. The default value is the current directory that the cookie is being set in.
mariolita
poradziłem sobie, warunek którzy stworzyłem zaprzeczał samemu sobie - śmiga aż miło
zegarek84
Cytat(mariolita @ 11.05.2016, 23:12:02 ) *
poradziłem sobie, warunek którzy stworzyłem zaprzeczał samemu sobie - śmiga aż miło

więc temat powinien polecieć do kosza, gdyż ludzi w błąd wprowadziłeś i z tematem i z kodem którego pokazałeś aż 1 linijkę ;]

ps. pomijam to co mi odpowiedziałeś, gdyż nic nie wspominałem o startowaniu ciasteczek na księżyc ;D


ps2. sesja po zamknięciu przeglądarki nie musi zaniknąć - jeśli dorabiasz w programowaniu to biada Ci - pisze to hobbysta ;D
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.