PDA

Zobacz pełną wersję : Angielksi, Polski, Niemiecki ok - francuski ma krzaczki



kasper1972
12-03-2008, 10:39
WItam, pierwszy raz na forum, do tej pory wszystko było do rozwiązania za pomoca szukaj, ale mam problem i proszę o poradę.

Robię stronę w 4 wersjach językowych: polski, niemiecki, angielski, francuski.

Serwis stawiam na joomla 1,13 uth, kodowanie bazy UTF, porównanie znaków UTF. Jomla fish 1,8. To tyle odnośnie instalacji.

Skórka jest kodowana w charset=utf-8 i wszystko jest ok, poza francuskim tam mam krzaczki. jak zmienie na iso to wywala mi sie reszta.

Jak ktoś ma rozwiązanie problemu, to proszę o podzielenie się nim na forum.

inkos
12-03-2008, 12:40
WItam, pierwszy raz na forum, do tej pory wszystko było do rozwiązania za pomoca szukaj, ale mam problem i proszę o poradę.

Robię stronę w 4 wersjach językowych: polski, niemiecki, angielski, francuski.

Serwis stawiam na joomla 1,13 uth, kodowanie bazy UTF, porównanie znaków UTF. Jomla fish 1,8. To tyle odnośnie instalacji.

Skórka jest kodowana w charset=utf-8 i wszystko jest ok, poza francuskim tam mam krzaczki. jak zmienie na iso to wywala mi sie reszta.

Jak ktoś ma rozwiązanie problemu, to proszę o podzielenie się nim na forum.
Taka wskazówka: francuski kodujemy w iso-8859-1.

kasper1972
12-03-2008, 15:47
Taka wskazówka: francuski kodujemy w iso-8859-1.

Tak, ale jak połączyć UTF dla polskiego angielskiego i niemieckiego z ISO dla francuskiego?

Direct
13-03-2008, 11:06
Dla Ang, Pol, Niem jedna templatka z kodowaniem UTF-8, natomiast dla Fr druga templatka. Kopiujesz templatke, nadajesz jej inną nazwę, zmieniasz w pliku w xml nazwę i w pliku index.php zmieniasz kodowanie znaków.

W JoomFish masz możliwość przypisania inne templatki dla każdego języka.

Przy okazji. Możesz mi na maila podesłać tłumaczenie Joomli na język fancuski bo nigdzie nie mogę znaleźć?

direct.pl@gmail.com

kasper1972
14-03-2008, 09:56
Sprawa jest jeszcze bardziej skomplikowana. Jeśłi dam w jednym artykule wszystkie 4 języki kodowanie utf, to otrzymuje wszystkie znaki jaknależy, zaś przy zarządzaniu przez fisha fransucki pada. Potestuje dziś pomysł drirecta rózne skórki dla róznych wydań językowych

PS: dla wersji fransuskiej kozystam z polskiego wydania joomly, ponieważ ten jezyk ma miec tłumaczone tylko 4-5 pozycje.

Direct
15-03-2008, 16:53
Może sprobuj zmienić iso przez instrukcje IF w php ?

np.

<?php

$zmienna = $urls;

if($zmienna == '&lang=fr')
{
echo ("iso-8859-1");
}
else {
echo ("iso-8859-2");
}
?>

Oczywiście, ten kod może być błędny.

Swoją drogą skąd ściągnąłeś francuski język do joomli ?

Direct

kasper1972
15-03-2008, 22:53
Sprawa języków dla direct'a, chyba chodzi ci o to, tutaj sa wszystkie jezyki włącznie z francuskim:
http://extensions.joomla.org/index.php?option=com_mtree&task=listcats&cat_id=1837&Itemid=35

kodowanie dla wersji językowej ISO czy UTF można zmienić bezpośrednio w Fish, konfiguracja jezyków, jest kolumna iso code tam wpisujemy jezyk kodowania. Oczywiście pisze o fish 1,8 utf. strona zależnie od języka koduje się tak jak chcemy.

_chris-
14-04-2011, 15:38
Chciałem odświeżyć temat, gdyż teraz spotkałem się z takim samym problemem. Strona jest w 4 językach. Kodowanie UTF-8. Polski, angielski, niemiecki działają ok, ale gdy przełączę język na francuski to francuskie znaki niestety zmieniają się w głupoty. Czy znalazł ktoś na to rozwiązanie?

zwiastun
15-04-2011, 21:03
Należy sprawdzić dokłądnie kodowanie bazy danych - poszczególnych tabel

_chris-
18-04-2011, 10:42
zmieniłem te kodowanie, ale dalej jest to samo. zauważyłem że jak ręcznie przez phpmyadmin chcę zmienić wartość pola to wyskakuje:
Zmodyfikowanych rekordów: 0.
Warning: #1366 Incorrect string value: '\xC3\xA0 pri...' for column 'value' at row 1

i tak się dzieje w momencie wstawienia znaku: à. Inne znaku francuskie np. é albo ô są wyświetlane prawidłowo.

podpowiecie coś, bo nie bardzo wiem gdzie szukać teraz


Doszedłem do tego że jeszcze trzeba zmienić metodę porównywania napisów w:
bazie
tabeli
polu tablei

Teraz w bazie mam ten znak francuski, w edytorze joomfish tak samo jest już poprawnie, jednak na stronie jest wyświetlany jako ?


Problem rozwiązany!
Należy zmienić:
Metodę porównywania napisów:
bazy - utf8_general_ci
tabeli jos_jf_content - utf_general_ci
pola value w tabeli jos_jf_content - utf_general_ci

Może się przyda potomnym, ja szukałem 2 dni rozwiązania:D