Portál AbcLinuxu, 14. července 2025 08:49


Dotaz: Zjisteni HTTP_ACCEPT_LANGUAGE

28.11.2010 17:08 Harry
Zjisteni HTTP_ACCEPT_LANGUAGE
Přečteno: 1749×
Odpovědět | Admin
ahoj,

echo $_SERVER['HTTP_ACCEPT_LANGUAGE'];

tohle mi vypise

cs-CZ,cs;q=0.9,en;q=0.8

zajimalo by me jestli tohle muzu pouzit pro automatickou volbu jazyka nebo to neni vhodne. Pokud to vhodne je, kde bych mohl sehnat tyhle vypisy pro jine staty. Taky by me zajimalo podle ceho se to zjistuje. Predem vsem moc dekuji za pomoc

Řešení dotazu:


Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

Jendа avatar 28.11.2010 17:19 Jendа | skóre: 78 | blog: Jenda | JO70FB
Rozbalit Rozbalit vše Re: Zjisteni HTTP_ACCEPT_LANGUAGE
Odpovědět | | Sbalit | Link | Blokovat | Admin
zajimalo by me jestli tohle muzu pouzit pro automatickou volbu jazyka nebo to neni vhodne
Je to vhodné, ale stejně dej někam na web odkaz, který umožní přechod i na jiné jazykové verze.
Pokud to vhodne je, kde bych mohl sehnat tyhle vypisy pro jine staty.
Podle mě tady.
Taky by me zajimalo podle ceho se to zjistuje.
Je to hlavička, kterou ti posílá klient. Klient, pokud je to prohlížeč, si to obvykle zjišťuje z nastavení systému.
29.11.2010 08:26 Michal Kubeček | skóre: 72 | Luštěnice
Rozbalit Rozbalit vše Re: Zjisteni HTTP_ACCEPT_LANGUAGE
Pokud to vhodne je, kde bych mohl sehnat tyhle vypisy pro jine staty.

Podle mě tady.

Pozor, nejedná se o kódy zemí ale jazyků (proto je tam cs (čeština) a ne cz (Česká republika)). Takže by mělo jít o tento seznam.

Je to hlavička, kterou ti posílá klient. Klient, pokud je to prohlížeč, si to obvykle zjišťuje z nastavení systému.

Spíš to bývá dáno nastavením prohlížeče, např. v české lokalizaci Firefoxu je to úpravy - předvolby - obsah - vybrat jazyky.

Tarmaq avatar 29.11.2010 10:26 Tarmaq | skóre: 39
Rozbalit Rozbalit vše Re: Zjisteni HTTP_ACCEPT_LANGUAGE
Mohlo by pomoci i toto:
locale -a | cut -d . -f 1 | sort | uniq
Don't panic!
1.12.2010 22:07 Harry
Rozbalit Rozbalit vše Re: Zjisteni HTTP_ACCEPT_LANGUAGE
Odpovědět | | Sbalit | Link | Blokovat | Admin
tak nevim jestli to bude to prave orechove..

mam jeden server a divejte co to pise..

nekdy to pise tohle

[HTTP_ACCEPT_LANGUAGE] => cs-CZ

a nekdy zase tohle

[HTTP_ACCEPT_LANGUAGE] => cs-CZ,cs;q=0.9,en;q=0.8

nevi nekdo proc tomu tak je? nevim o nicem ze bych neco menil na serveru :(

dekuji za pomoc
Jendа avatar 1.12.2010 22:23 Jendа | skóre: 78 | blog: Jenda | JO70FB
Rozbalit Rozbalit vše Re: Zjisteni HTTP_ACCEPT_LANGUAGE
Záleží na tom, co posílá prohlížeč (klidně v té hlavičce může poslat ahoj). Řekl bych, že cs-CZ znamená, že preferuje jediný jazyk; když je řetězec delší, tak tam jsou kvalitativní faktory - jak moc by který jazyk ocenil.

Podle mě to už někdo před tebou musel vyřešit a bude na to nějaká knihovna…
3.12.2010 12:51 Karlos
Rozbalit Rozbalit vše Re: Zjisteni HTTP_ACCEPT_LANGUAGE
aha, tak ze kdyz tam prijde indexovat stranky robot ktery prohlizec nepouzivat tak ta superglobalni prommenna nebude ani existovat, ze ne?
3.12.2010 16:43 Michal Kubeček | skóre: 72 | Luštěnice
Rozbalit Rozbalit vše Re: Zjisteni HTTP_ACCEPT_LANGUAGE
Ne nutně. Indexovací robot klidně může hlavičku Accept-Language posílat, naopak webový prohlížeč ji nastavovat nemusí. Vy v té proměnné prostě dostanete to, co klient poslal - tedy pokud něco poslal.
1.12.2010 22:28 Petr Šobáň | skóre: 80 | blog: soban | Olomouc
Rozbalit Rozbalit vše Re: Zjisteni HTTP_ACCEPT_LANGUAGE
Však tě to napsaly.

Se serverem to nemá nic společného.

Proměnnou nastavuje prohlížeč a záleží co on pošle a co si tam uživatel nastavil.

Poprvé tam nastavil češtinu, podruhé tam byla čeština a angličtina.
2.12.2010 05:13 Michal Kubeček | skóre: 72 | Luštěnice
Rozbalit Rozbalit vše Re: Zjisteni HTTP_ACCEPT_LANGUAGE
RFC 2616 (zejména sekce 14.4), RFC 1766

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.