| Zobrazit předchozí téma :: Zobrazit následující téma |
| Autor |
Zpráva |
drake127 Profesionál


Založen: 30.5.2005 Příspěvky: 500 Bydliště: Jihlava, Czech Republic
|
Zaslal: 23 leden 2006 18:15 Předmět: Diakritika - teorie |
|
|
Jelikož se tu množí otázky na to, jak přesunout fórum tak, aby fungovalo, rozhodl jsem se, že odpovím trochu obecněji. Předesílám, že nepíšu postup krok za krokem, takže vaše samostudium a pochopení problematiky je stále nutné.
Nejdříve si musíte zjistit, v jakémže to kódování vlastně své fórum máte. Naneštěstí většina z vás pouze zkopíruje složku lang_czech/ a tím skončí. Proč je to špatně? Nejdříve ta méně důležitá věc - špatně se odesílá předmět e-mailů (Nov? soukrom? zpr?va). Další a o mnoho důležitější problém, nastává, pokud máte databázi MySQL 4.1 (a vyšší). Tato totiž používá pro ukládání znaků svoji vlastní reprezentaci dat a tudíž potřebuje vědět, v jakémže kódování jí data posíláte.
Zjistit to ale nejdřív musíte vy - pokud si už nepamatujete, jakou češtinu jste si stáhli (Bylo by snažší, kdyby se přestala podporovat Windows-1250), zjistíte to snadno v souboru lang_main.php, řádek $lang['ENCODING'] = '...';.
Nyní už "své" kódování znáte a já dále budu zmiňovat pouze UTF-8. Ti z vás, kteří si zvolili (kdo ví proč) Windows-1250, nechť si v duchu nahradí UTF-8 za Windows-1250 a utf8 za cp1250.
Dále musíte nutně zjistit, jakou máte verzi MySQL. Toto zjistíte snadno na první stránce phpMyAdminu po přihlášení. Jelikož MySQL 4.0 (a nižší) přistupuje k datům hezky byte po bytu,v databázi máte uloženo přesně to, co pošlete a o vlastní konverzi se musíte postarat sami *). MySQL 4.1 se naopak velmi zajímá o formát posílaných dat, takže po navázání spojení musíte oznámit, v jakém kódování si chcete povídat **).
Nyní považuji za nutné zmínit ještě jednu podmínku správně fungujícího fóra - všechny nainstalované jazyky musí používat stejné kódování, jinak hrozí katastrofa - stačí jediný uživatel, který si usmyslel používat angličtinu a následný chaos v databázi budete muset opravovat ručně! Naštěstí pro vás si zmíněný uživatel rychle všimne, že je něco špatně a od svého anglického rozhraní upustí. Přesto (a nebo spíše právě proto) odhaduji počet takto špatně nastavených fór na 95 %.
Nyní přejdeme na chvíli k praxi - jak databázi oznámit, v jakém kódování jí data posílám a jak vyřešit zmíněný problém s e-maily?
http://www.phpbbcz.com/viewtopic.php?t=2434
To, co jsem zmínil výše (a také v odkazu) je správně nastavené fórum. Ovšem přece bych nečekal, že všechno bude tak, jak má, že?
Problém č. 1: Mám MySQL 4.1 (a výše) a na úpravu db/mysql4.php jsem se vykašlal.
Nastávají dvě možnosti. Váš správce udělal systém blbuvzdorný (pravděpodobně s velkým sebezapřením a z rozkazu svého šéfa ("udělej to tak, ať si nestěžujou")), takže je vlastně všechno v pořádku. Poznáte to tak, že po přihlášení do phpMyAdmina se vám v příspěvcích zobrazuje diakritika správně (na otestování je ideální tabulka *_posts_text).
Druhá (o poznání horší) varianta je ta, že je diakritika rozhozená. Potom musíte databázi vyexportovat, opravit kódování tak, abyste opět viděli smysluplné znaky (buď přeuložením nebo starou dobrou metodou Najdi/Nahraď), a správně naimportovat zpět. Zdůrazňuji slovíčko správně, protože v phpMyAdminu je možnost/nutnost vybrat použité kódování importu. Že jste toto provedli správně zjistíte tak, že se vám diakritika v databázi zobrazí tak, jak má.
V obou případech je poslední krok znovu nezapomenout na úpravu db/mysql4.php.
Problém č. 2: Používám MySQL 4.0 (a nižší) a diakritika (příspěvků) je podivná.
V MySQL 4.0 (a nižší) je kódování příspěvků v databázi spojeno s kódováním fóra. Proto, když změníte kódování fóra, máte problém, který vyřešíte podobně jako předchozí případ (export, úprava, import) s tím rozdílem, že se kódování importovaného souboru musí shodovat s kódováním fóra (všimněte si, že v MySQL 4.1 toto neplatí).
Problém č. 3: Přesun fóra.
Toto je pouze určité shrnutí předchozích dvou případů. Musíte si uvědomit, z jaké verze MySQL vycházíte a do jaké verze vkládáte. Jinak je situace totožná jako v případě opravy (zálohy).
Pokud jsem něco nevyložil dostatečně jasně a něčemu nerozumíte, neváhejte se ozvat (termín nerozumíte jsem zvolil úmyslně - pokud jen nevíte, jak něco udělat a chápete, co máte udělat, není problém si tuto informaci vyhledat v manuálu nebo dokumentaci).
*) Z textových editorů, které toto zvládají bez chyby, mohu jmenovat pouze jEdit s plnou podporou unicode (narozdíl třeba od PSPadu). Jeho ovládání je poněkud krkolomnější, ale věřím, že po chvíli zjistíte, jak měnit kódování češtiny.
**) Fakt, že to na některých hostinzích funguje samo od sebe je ten, že správci očekávají, že lidé, kteří pracují s Windows-1250 si toto nastavit neumějí a proto raději zvolí Windows-1250 jako výchozí kódování, aby se vyhli nekonečným otázkám proč že to nefunguje. Nicméně na to nelze v žádném případě spoléhat! _________________ Žralok, který štěká, nekouše. |
|
| Návrat nahoru |
|
 |
Webhosting C4 - 2 GB, PHP, MySQL, administrační systém, 1.200 Kč na rok s doménou v ceně.
Bezproblémová instalace phpBB, Joomla, Drupal. Návody pro C4 - užitečné rady pro zákazníky.
Kvalitní notebooky,
spolehlivé dřevostavby,
útulné domy,
výhodné
sázkové kanceláře
Apartment in Prague - accommodation in Prag,
prague
apartments, kvalitní plastová okna, levné ubytování
|  |
Leon
Založen: 26.12.2006 Příspěvky: 2
|
Zaslal: 26 prosinec 2006 14:11 Předmět: Vse je jak ma byt |
|
|
Vse jsem udelal jak je napsano uz nahore a doposud jsem nemel upech abych videl me ceske forum s diakritikou, tak jak to ma byt.
MySQL-4.1
vse nastaveno na UTF-8 Unicode (utf8) a utf8_unicode_ci v phpmyadmin.
Vsechny tabulky v databazi jsou nastaveny stejne.
Porad zadny uspech. Az nakonec precejen jiskricka nadeje.
V phpBB2 (verze 2.0.22) jsem zmenil k tomu vsemu v common.php
Header (hlavicku) na <?php header("Content-type: text/html; charset=utf8");
Ted vse funguje jak ma.
Naposledy upravil Leon dne 28 prosinec 2006 00:58, celkově upraveno 1 krát. |
|
| Návrat nahoru |
|
 |
Leon
Založen: 26.12.2006 Příspěvky: 2
|
Zaslal: 28 prosinec 2006 00:53 Předmět: Problem s Diakritikou c.2 |
|
|
Sice se o tomto Drake zminuje uz na zacatku ale pokladam toto tema za dulezite natolik abych to zde uvedl jeste jednou, protoze to clovek docela rychle zepomene.
Vzdy kdyz jsem napsal prizpevek cesky s pismeny ěščřžýáíéůú atd. a potom jsem prehodil rec napr. do anglictiny zmenily se tyto pismena na jine znaky. A jako administrator jsem v anglictine uz vubec nemohl vytvorit nove forum s ěščřžý... Uz vim proc !
Totiz pri instalaci angliceho phpBB jsem nenastavil spravne kodovani ( jestli to vubec jde ), bylo proste nastavene jine kodovani a to je potreba zmenit na kodovani ktere pouzivate. V mem pripade je to UTF-8.
Zmenit ho lze v souboru lang_main.php najdete jej na vasem FTP serveru- /language/lang_english/lang_main.php
Otevrte tento soubor (lang_main.php) treba programem PSPad a tam kde stoji
$lang['ENCODING'] = zmente kodovani na vase.
Vse vypada potom treba takto:
$lang['ENCODING'] = 'UTF-8';
Ulozte/prepiste tento soubor na vasem serveru a potom by melo vse fungovat jak ma.
Pokavad menite treba cestinu tak zase v /language/lang_czech/lang_main.php atd.
Ujistete se ze mate v kazdem jazyce vzdy spravne kodovani !!! |
|
| Návrat nahoru |
|
 |
Tomiket Nováček

Založen: 8.12.2007 Příspěvky: 9
|
Zaslal: 08 prosinec 2007 20:18 Předmět: Re: Problem s Diakritikou c.2 |
|
|
ahoj
potřeboval bych vás požádat o radu..
stáhl jsem si phpbb2 a k němu češtinu UTF-8
vše funguje až na jednu maličkost
neběhají mi tam maily
vůbec žádné..ověřovací,oznamovací.......
zkoušel jsem to upravit dle tohoto http://www.phpbbcz.com/viewtopic.php?t=2434
upravil jsem dle návodo mysq4.php a pak emailer.php
avšak když jsem šel na forum tak to tam hodilu chybu s mysq4 a forum nenalezlo,
takže jsem to přepsal zpět...
Věděl by někdo jak mi poradit.
Předem vám všem moc děkuji za jakoukoliv odpověď
[/url] |
|
| Návrat nahoru |
|
 |
LinDan Nováček

Založen: 17.9.2007 Příspěvky: 12
|
Zaslal: 29 prosinec 2007 17:49 Předmět: |
|
|
Já mám s tím na funpic.org taky problém. Pomůže,když všechny ty soubory v Českém překladu přepíšu (samozřejmě tam nechám,že ten překlad je od vás ) a zbavím je háčků,kroužků a čárek? |
|
| Návrat nahoru |
|
 |
Roman98
Založen: 31.1.2008 Příspěvky: 1
|
Zaslal: 31 leden 2008 20:15 Předmět: Re: Diakritika - teorie |
|
|
| chci Hrat |
|
| Návrat nahoru |
|
 |
jams001 Nováček

Založen: 12.11.2008 Příspěvky: 4
|
Zaslal: 24 listopad 2008 16:11 Předmět: Re: Diakritika - teorie |
|
|
great topic interesting,i really don't understand all your post but i can understand just a little only thanks for a little idea,
busby seo test |
|
| Návrat nahoru |
|
 |
|
|
|
|
Nemůžete odesílat nové téma do tohoto fóra. Nemůžete odpovídat na témata v tomto fóru. Nemůžete upravovat své příspěvky v tomto fóru. Nemůžete mazat své příspěvky v tomto fóru. Nemůžete hlasovat v tomto fóru. Nemůžete připojovat soubory k příspěvkům Nemůžete stahovat ani prohlížet přiložené soubory
|
Powered by phpBB & phpBB SEO © 2001, 2005 phpBB Group Český překlad phpBB Czech - www.phpbbcz.com Optimalizoval JanoF - PCforum.sk
|