Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Polskie znaki z ciasteczcka
rad11
post
Post #1





Grupa: Zarejestrowani
Postów: 1 270
Pomógł: 184
Dołączył: 7.10.2012
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Mam problem ustawiam sobie w PHP ciastka(z polskimi znakami):

  1. $langs = Langs::getAllTranslations();
  2.  
  3. foreach($langs as $index => $value){
  4. setcookie($index, $value);
  5. }


I pozniej probuje pobrac je w JS:

  1.  
  2. console.log(getCookie('t_hello'));
  3. function getCookie(cname) {
  4. var name = cname + "=";
  5. var ca = document.cookie.split(';');
  6. for (var i = 0; i < ca.length; i++) {
  7. var c = ca[i];
  8. while (c.charAt(0) == ' ')
  9. c = c.substring(1);
  10. if (c.indexOf(name) == 0)
  11. return c.substring(name.length, c.length);
  12. }
  13. return "";
  14. }


I tak np wyraz Cześć wygląda taK : Cze%25C5%259B%25C4%2587

W czym problem nagłówki są w UTF-8 i kodowanie plików też. Jakieś pomysły?

Niby decodeURI(getCookie()) działa.
Go to the top of the page
+Quote Post
trueblue
post
Post #2





Grupa: Zarejestrowani
Postów: 6 806
Pomógł: 1828
Dołączył: 11.03.2014

Ostrzeżenie: (0%)
-----


setcookie automatycznie urlencode'uje przy zapisie i urldecode'uje przy odczycie.
setrawcookie tego nie robi.
Go to the top of the page
+Quote Post
Comandeer
post
Post #3





Grupa: Zarejestrowani
Postów: 1 268
Pomógł: 254
Dołączył: 11.06.2009
Skąd: Świętochłowice

Ostrzeżenie: (0%)
-----


Osobiście po prostu dodałbym dekodowanie do getCookie i tyle.
Go to the top of the page
+Quote Post
rad11
post
Post #4





Grupa: Zarejestrowani
Postów: 1 270
Pomógł: 184
Dołączył: 7.10.2012
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Wystąpił kolejny problem z którym zastanawiam się jak go rozwiązać mianowicie.
Jest tyle tlumaczeń ze brakuje w przeglądarce miejsca na cookie`sy(tak mi sie wydaje) i mam komunikat

Kod
400 Bad Request
Your browser sent a request that this server could not understand.
Size of a request header field exceeds server limit.
Cookie


jakies pomysly?

Ten post edytował rad11 16.11.2015, 12:40:19
Go to the top of the page
+Quote Post
nospor
post
Post #5





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Yyyyy..... ty tlumaczenia aplikacji wrzucasz do ciastek? A po grzyba?
Go to the top of the page
+Quote Post
rad11
post
Post #6





Grupa: Zarejestrowani
Postów: 1 270
Pomógł: 184
Dołączył: 7.10.2012
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Chce zrobić tak aby używać tłumaczeń i w js i w php tych samych
Go to the top of the page
+Quote Post
nospor
post
Post #7





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




No a kto ci broni wrzucac tlumaczenia do kodu js bezposrednio? No nikt (IMG:style_emoticons/default/smile.gif) Ciacha nie sluza do trzymania tlumaczen
Go to the top of the page
+Quote Post
rad11
post
Post #8





Grupa: Zarejestrowani
Postów: 1 270
Pomógł: 184
Dołączył: 7.10.2012
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


w *.js nie bardzo jest jak wrzucic tlumaczenia z php
Go to the top of the page
+Quote Post
nospor
post
Post #9





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




alez jest

<?php echo 'var tl = "jakies tlumaczenie";'; ?>
Go to the top of the page
+Quote Post
redeemer
post
Post #10





Grupa: Zarejestrowani
Postów: 915
Pomógł: 210
Dołączył: 8.09.2009
Skąd: Tomaszów Lubelski/Wrocław

Ostrzeżenie: (0%)
-----


Zrób sobie "sztuczny" plik locale.js generowany dynamicznie (podczas requestu) przez PHP na podstawie aktualnego słownika.
Np:
Kod
var locale = new Array();
locale['msg1']='Costam 1';
locale['msg2']='Costam 2';
...
Go to the top of the page
+Quote Post
rad11
post
Post #11





Grupa: Zarejestrowani
Postów: 1 270
Pomógł: 184
Dołączył: 7.10.2012
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Tak zrobiłem i działa na chwilę obecną super. Dzięki.
Go to the top of the page
+Quote Post
Comandeer
post
Post #12





Grupa: Zarejestrowani
Postów: 1 268
Pomógł: 254
Dołączył: 11.06.2009
Skąd: Świętochłowice

Ostrzeżenie: (0%)
-----


Hm… nie lepiej trzymać to w JSON-ie? I PHP i JS rozumieją ten format i nie trza robić osobnego pliku.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 15.09.2025 - 05:18