PDA

Zobacz pełną wersję : polskie znaki (wiem że było)



skorupa
24-01-2007, 09:47
Witam!
Wiem, że było wiele razy, ale nadal nie mogę sobie poradzić ;(
Niestety na mojej stronie http://paintball.skorupski.eu nie mogę rozwiązać problemu polskich znaków.
Sprawdzałem źródło, dodawałem i dodałem:
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-2" />

Niestety nie pomogło ;(
Nie przenosiłem też strony z serwera na inny sewer

Wiem, że może to być problem z bazą danych, ale nie wiem, o tam trzeba pozmieniać ;(

strona wygląda tak: http://skorupski.eu/str.jpg
phpNyAdmin wygląda tak: http://skorupski.eu/php.jpg

jokris
24-01-2007, 14:45
Witaj. Ustaw kodowanie w bazie w rozwijalnym polu :"System porównań dla połączenia MySQL:" na utf8_unicode_ci, a nie jak masz teraz utf_polish_ci. Musi być taki sam (system porównań) , jak system kodowania znaków dla całej bazy MySQL. Powinno być ok. I nie zmieniaj nic więcej, np w tabelach. Zostaw domyślne ustawienia. Resztę powinna "zrobić" Joomla. Pozdro.:) Jokris.

skorupa
24-01-2007, 15:04
Zmieniłem na utf8_unicode_ci i niestety niec sie na stronie nie zmieniło ;(

strona wygląda tak: http://skorupski.eu/str.jpg
phpNyAdmin wygląda tak: http://skorupski.eu/php.jpg

jokris
24-01-2007, 20:06
Spróbuj napisać nowy artykuł, i opublikuj go. I jak wygladają artykuły w czasie edycji?. Też masz znaki zapytania?. Jeśli nie masz, to wyedytuj wszystkie artykuły ponownie, i zapisz jeszce raz. To samo zrób z modułami. Pokombinuj. Pozdro. Jokris.

skorupa
24-01-2007, 20:13
nadal niema polskich znaków: http://paintball.skorupski.eu/index.php?option=com_content&task=view&id=42&Itemid=2
niestety lipa, zamieniło mi ąęśćź na ?????

Thiaggo
24-01-2007, 22:17
Mam podobna sytuacje, w trakcie instalacji polskie znaki były a po odpaleniu witryny sa znaki zapytania...
Ma ktoś jakis pomysł?

jokris
25-01-2007, 15:54
nadal niema polskich znaków: http://paintball.skorupski.eu/index.php?option=com_content&task=view&id=42&Itemid=2
niestety lipa, zamieniło mi ąęśćź na ?????
:) Tak może być, owszem. Tylko po co ten link?. Musiałeś źle skonfigurować bazę przed instalacją Joomla ( to jest tylko założenie ). Jeżeli instalowałeś Joomla z kodowaniem iso-8592, a innej w wersji 1.11, i 1.12 nie widzę, to powinieneś tylko utworzyć bazę, nic w niej nie zmieniając. To właśnie wersja Joomla (wersja kodowania języka ) określa, w jakim kodowaniu ma być twoja witryna. W templatce też powinna być odpowiednia deklaracja kodowa, ale myślę, że masz odpowiednią. Instalator, wprowadzając dane do twojej bazy, czyli tworząc tabele, sugeruje się twoją wersją Joomla. W większości baz dane przechowywane są w kodowaniu utf-8, jako że serwery też w większości oparte są na Linuxie. To dla Ciebie akurat nie ma żadnego znaczenia, bo to Joomla odpowiada za wyświetlenie dowolnej treści w iso-8592 lub utf-8. Ja miałem bazę na serwerze OVH 1000GP, w której dane przechowywane były w iso-8592, a obecnie usługodawca zmienił wersję MySQL z 4 na 5, i musiałem "przekonwertować" dane z iso-8592 na UTF-8. Kosztowało mnie to trochę pracy i kilkudniową przerwę w działaniu serwisu. Po zmianie kodowania w bazie, nic nie zmieniałem w plikach Joomla, tylko właśnie musiałem niektóre artykuły, a szczególnie ich tytuły wyedytować i zapisać na nowo, bo miałem zamiast polskich znaków, ich odpowiedniki w formie znaków "encji". Po ponownym zapisaniu , wszystko wróciło do właściwego wyświetlania. Dlatego spróbuj jeszcze raz, po edycji artykułu, poprawić w nim znaki zapytania na właściwe litery, i zapisz ponownie. Musisz pamiętać, że to, co zostało już wprowadzone do bazy, nie można już zmienić bez ingerencji w bazę. Bo skąd teraz "system porównywania znaków" ma wiedzieć, co się kryje pod znakami zapytania. W bazie nie ma słownika języka polskiego. Tych artykułów masz zresztą tak mało, że poprawka ich zajmie Ci mało czasu. Zauważ jeszcze, że niektóre Twoje artykuły wyświetlają prawidłowo "polskie znaki", czyli komunikacja Joomla z bazą pod względem kodowania jest prawidłowa. Jeśli chodzi o moduły, to w bazie trzymana jest tylko ich nazwa, a treść jest pobierana z samych modułów, czyli z plików PHP. Są wyjątki. Dotyczy to modułów, które gromadzą jakieś dane w bazie. Mogą to być jakieś statystyki i.t.p. U Ciebie przykładem jest moduł "Sondy", który dane wprowadzone przez Ciebie pobiera z komponentu. Natomiast komponenty zazwyczaj tworzą swoje odrębne tabele, i tutaj musiałbyś już ingerować w bazę danych. Reasumując. Albo spróbuj skorzystać z moich porad, albo przeinstaluj ponownie Joomla, jako że nic nie tracisz, bo na stronie nic nie masz ważnego. Przed ponowną instalacją, wyczyść bazę danych, albo za pomocą instalatora, zaznaczjąc, aby usunął wszystkie tabele, lub zrób to bezpośrednio w bazie, korzystając z przyciku "Usuń" w polu "Struktura" bazy, wcześniej zaznaczając na dole, pod danymi "zaznacz wszystkie". W polu "Home" bazy zostaw wartości "domyślne", czyli takie, jakie miałeś po utworzeniu bazy. Wcześniej pisałem:
Ustaw kodowanie w bazie w rozwijalnym polu :"System porównań dla połączenia MySQL:" na utf8_unicode_ci, a nie jak masz teraz utf_polish_ci.bo innego kodowania w tym polu nie widziałem, a poprawiałem juz kilka baz na róznych serwerach. Na moim jest też takie ustawienie. Dla pewności zapytaj "adminów" serwera. Jeszcze na koniec sprawdź tylko, czy masz wszystkie pliki w folderze "includes" w głównym katalogu Joomla. Mogłeś coś nie dosłać na serwer podczas kopiowania, a w tym folderze znajdują się najważniejsze pliki, odpowiedzialne za prawidłowe działanie CMS-a. Możesz również zmienić wersję PHP z 5 na 4, bo pod wersją 4 Joomla, ale już rozbudowana, lepiej pracuje. Poza tym masz starszą wersję MySQL, czyli też 4 na serwerze (to widać na obrazku ). Widać także jakieś dwa komunikaty o niewłaściwym serwerze, więc o nie też zapytaj "adminów". W bazie MySQL nie powinno być żadnych komunikatów o błędach. Myśl i kombinuj. Dotyczy to nie tylko użytkownika skorupa. To zawsze daje pozytywne efekty. To może tyle. Pozdro. Jokris.:)

Thiaggo
25-01-2007, 17:58
Czy w bazie Joomli metoda porownywania znakow moze byc ustawiona na "latin2_general_ci"? Bo u mnie tak jest.
Poza tym widze ze skorupa i ja korzystamy z tego samego serwera...

jokris
25-01-2007, 18:35
Czy w bazie Joomli metoda porownywania znakow moze byc ustawiona na "latin2_general_ci"? Bo u mnie tak jest.
Poza tym widze ze skorupa i ja korzystamy z tego samego serwera...
:) Każdy serwer ma różne wymogi, więc skoro Ty piszesz, że tak masz ustawione, a jeszcze wcześniej piszesz, że masz ten sam problem, co skorupa, to proponuję Ci napisać maila do "adminów" serwera, i ich się zapytać. Ja Ci w tym pomóc nie mogę. Co wiem na ten temat, napisałem wcześniej. Chyba że zmieniliście obaj "Metodę porównywania napisów" (nie mylić z "metodą porownywania znakow" ) w tabelach z "latin1_swedish_ci" na "latin2_general_ci", czego nie należy robić, wówczas polskich znaków na pewno mieć nie będziecie. Pozdro, Jokris.

skorupa
25-01-2007, 19:17
wywaliłem baze, wywaliłem joomle, wrzuciłem na serwer jeszcze raz i już przy instalacji niema polskich znaków ;(

Thiaggo
25-01-2007, 21:01
:) Każdy serwer ma różne wymogi, więc skoro Ty piszesz, że tak masz ustawione, a jeszcze wcześniej piszesz, że masz ten sam problem, co skorupa, to proponuję Ci napisać maila do "adminów" serwera, i ich się zapytać. Ja Ci w tym pomóc nie mogę. Co wiem na ten temat, napisałem wcześniej. Chyba że zmieniliście obaj "Metodę porównywania napisów" (nie mylić z "metodą porownywania znakow" ) w tabelach z "latin1_swedish_ci" na "latin2_general_ci", czego nie należy robić, wówczas polskich znaków na pewno mieć nie będziecie. Pozdro, Jokris.

Problem rozwiązany - baza domyślnie była tworzona z metodą porównywania napisów "latin2_general_ci" więc trzeba utworzyć nową baze i przed instalacją Joomli zmienić metode na "utf8_polish_ci", po nowej instalacji wszystko jest jak trzeba.

skorupa
26-01-2007, 09:56
po przeinstalowaniu joomli mam polskie znaki w panelu administracyjnym i gdzieniegdzie na stronach, ale nie wszędzie, sam już nie wiem

Thiaggo
26-01-2007, 11:00
po przeinstalowaniu joomli mam polskie znaki w panelu administracyjnym i gdzieniegdzie na stronach, ale nie wszędzie, sam już nie wiem

A zrobiłeś tak jak ja? Masz strone na tym samym serwerze co ja więc to chyba błąd w konfiguracji MySQL'a, baza jest domyślnie tworzona z niewłaściwym sposobem porównywania napisów.