Autor | Zpráva | ||
---|---|---|---|
vacjos Profil * |
Ahoj,
na stránce ukládám obsah textarey javascriptem do cookies. Při znovunajetí na stránku opět text z cookies načítám přes php do stejné textarey. Problém je, že nevím proč, mi to rozhodí diakritiku (znaky ř,š,č..). Stránky mám všechny s charset=windows-1250". Co s tím? Díky javascript - ukládání: function Set_Cookie(name, value) { var expires = 365 * 1000 * 60 * 60 * 24; var path = '/'; var domain = ''; var secure = ''; var today = new Date(); today.setTime(today.getTime()); var expires_date = new Date(today.getTime() + (expires)); document.cookie = name + "=" +escape(value) + ((expires) ? ";expires=" + expires_date.toGMTString() : "") + ((path) ? ";path=" + path : "") + ((domain) ? ";domain=" + domain : "") + ((secure) ? ";secure" : ""); } php načítání: echo $_COOKIE[$name]; Moderátor Davex: Vkládej prosím kódy mezi značky [>pre] a [>/pre] (stačí kliknout na
![]() |
||
Davex Profil |
#2 · Zasláno: 9. 6. 2011, 19:34:47
Pro ukládání hodnot do cookies bys měl místo funkce
escape() používat funkci encodeURIComponent() . Obsah by se pak měl vždy uložit v kódování UTF-8, takže budeš potřebovat ještě iconv() v PHP skriptu.
|
||
vacjos Profil * |
#3 · Zasláno: 10. 6. 2011, 09:00:28
Opravil jsem to, ale při použití:
$input = iconv('UTF-8', 'windows-1250', $_COOKIE[$name]); nebo i $input = iconv('UTF-8', 'windows-1250//IGNORE', $_COOKIE[$name]); nebo i $input = iconv('UTF-8', 'windows-1250//TRANSLIT', $_COOKIE[$name]); to hlásí iconv() [<a href='function.iconv'>function.iconv</a>]: Detected an illegal character in input string in Co s tím? |
||
Davex Profil |
#4 · Zasláno: 10. 6. 2011, 18:20:46
vacjos:
Mělo by to fungovat. Co je uloženo v $_COOKIE[$name] ?
|
||
Časová prodleva: 14 let
|
0