wdrożenia PrestaShop

odczyt cookie w .tpl

  • 7 Odpowiedzi
  • 2114 Wyświetleń

0 użytkowników i 1 Gość przegląda ten wątek.

*

Offline 1q2w3e4r

  • Tubylec
  • ****
  • 104
  • 0
odczyt cookie w .tpl
« dnia: Czerwiec 01, 2015, 11:00:39 pm »
Witam


Dodałem za pomocą JS cookie do strony, teraz potrzebuję je odczytać w .tpl, próbowałem np. tak: {$cookie->change_category} jednak nie działa. Chciałbym aby za zmienna mogła być odczytywana wszędzie.


Prestashop 1.6

*

Offline 1q2w3e4r

  • Tubylec
  • ****
  • 104
  • 0
Odp: odczyt cookie w .tpl
« Odpowiedź #1 dnia: Czerwiec 02, 2015, 04:18:21 pm »
Widzę, że chyba zły dział i nikt nie wie jak to zrobić. Proszę przenieść do innego.

*

Offline endriu107

  • user
  • Mieszkaniec
  • *****
  • 1,197
  • 51
  • PrestaShop: PS
  • Status: forum
Odp: odczyt cookie w .tpl
« Odpowiedź #2 dnia: Czerwiec 02, 2015, 05:49:48 pm »
Żeby coś odczytać z smarty należy to najpierw przekazać do smarty, dlaczego nie skorzystać z gotowych rozwiązań? Ma to być informacja o cookies?

*

Offline 1q2w3e4r

  • Tubylec
  • ****
  • 104
  • 0
Odp: odczyt cookie w .tpl
« Odpowiedź #3 dnia: Czerwiec 02, 2015, 06:52:35 pm »
Tak, jak najbardziej gotowa może być do pobrania wartości ciasteczka gotowa funkcja.
Za pomocą js dodałem cookies przykładowo o nazwie "maleCiestaczko" z wartością "slodkie". Potrzebuję teraz w smarty pobrać wartość cookies "maleCiestaczko".

*

Offline design4VIP

  • user
  • Mieszkaniec
  • *****
  • 3,866
  • 131
    • design4VIP z innej strony...
  • PrestaShop: PS
  • Status: Programista
Odp: odczyt cookie w .tpl
« Odpowiedź #4 dnia: Czerwiec 02, 2015, 07:46:15 pm »
jezlei masz dobrze wpisana zmienna przez ta js to odczytujesz bezposrednio:

{if isset($cookie->maleCiestaczko) && $cookie->maleCiestaczko}
      {assign var='maleCiestaczko' value=$cookie->maleCiestaczko}
{/if}

zmienna do uzywcia w smarty:
{$maleCiestaczko}

tu juz masz z badaniem wystepowania i zmiana na prosta nazwe zmiennej zeby nie bawic sie tablicowymi.
design4VIP z innej strony...

*

Offline 1q2w3e4r

  • Tubylec
  • ****
  • 104
  • 0
Odp: odczyt cookie w .tpl
« Odpowiedź #5 dnia: Czerwiec 02, 2015, 09:28:47 pm »
ciasteczko jest stworzone (sprawdzałem wtyczką do chrome) ale niestety nie pobiera jego wartości tą metodą którą podałeś, ciekawe dlaczego. Wszystko kopiowałem więc jest identycznie, hmm
« Ostatnia zmiana: Czerwiec 02, 2015, 10:23:49 pm wysłana przez 1q2w3e4r »

*

Offline 1q2w3e4r

  • Tubylec
  • ****
  • 104
  • 0
Odp: odczyt cookie w .tpl
« Odpowiedź #6 dnia: Czerwiec 02, 2015, 11:47:14 pm »
podany przez Ciebie przykład jest poprawny tylko działa on w szyfrowanym cookie. W PS 1.6 cookies jest szyfrowane. Ja dodałem zwykłe cookie przez js i można je pobrać przez smarty $smarty.cookies.nazwaCiastka

*

Offline design4VIP

  • user
  • Mieszkaniec
  • *****
  • 3,866
  • 131
    • design4VIP z innej strony...
  • PrestaShop: PS
  • Status: Programista
Odp: odczyt cookie w .tpl
« Odpowiedź #7 dnia: Czerwiec 03, 2015, 10:27:24 am »
ale dokladnie na powyzszym przykladzie tak samo wrzucalem cookie przez JS

function saveCookie(name, value, time) {
        if (dni) {
            var data = new Date();
            data.setTime(data.getTime()+(time*24*60*60*1000));
            var expires = "; expires="+data.toGMTString();
        } else {
            var expires = "";
        }
        document.cookie = name+"=" + value + expires + "; path=/";
    }

i dziala bez zarzutu. tak na 1.4 jak i 1.6
design4VIP z innej strony...