Wiem, ze nieco NTG, ale sadze, ze tu najszybciej znajde jakas
pomoc/odpowiedz. Dostalem w ,,spadku'' nieco baz danych, do ktorych nie
ma zadnego cms, a trzeba poprawiac co jakis czas dane. Najwygodniejsze
wydalo mi sie uzycie windows i jakiegos gui w stylu MySQL-Front czy
phpMyAdmin... Zabawa polega na tym, ze zamiast polskich fontow w jednym
i drugim widze krzaczki, bo kodowanie tekstu w bazie to utf-8.
Wyprobowalem kilka takich gui, miedzy innymi ems czy navicat, wszedzie
to samo. Ma ktos jakis pomysl?
Tabele maja ustawiony default charset na utf8, a navicat pokazuje
podczas polaczenia encoding 65001 (UTF-8).
Z gory dzieki,
pozdr. wgd
> Witam,
>
> Wiem, ze nieco NTG, ale sadze, ze tu najszybciej znajde jakas
> pomoc/odpowiedz. Dostalem w ,,spadku'' nieco baz danych, do ktorych nie
> ma zadnego cms, a trzeba poprawiac co jakis czas dane. Najwygodniejsze
> wydalo mi sie uzycie windows i jakiegos gui w stylu MySQL-Front czy
> phpMyAdmin... Zabawa polega na tym, ze zamiast polskich fontow w jednym
> i drugim widze krzaczki, bo kodowanie tekstu w bazie to utf-8.
phpMyAdmin daje radę z UTF. Trzeba tylko ustawić kodowanie dla interfejsu.
--
Michał Gancarski
"If there's not drama and negativity in my life, all my songs will be
really wack and boring or something." Eminem
ale dziala zdaje sie tylko przy podawaniu jako zrodla danych pliku,
pzy przeklejaniu przez schowek Windy jest roznie
--
tomek nowak
http://rezist.com
http://anvilstrike.com
http://icic.pl
> phpMyAdmin daje radę z UTF. Trzeba tylko ustawić kodowanie dla interfejsu.
Hm, no w moim przypadku nie daje, sprawdzilem, jest w naglowku i w meta
utf-8, phpMyAdmin pokazuje kodowanie utf-8, moze cos z serwerem?
Trafilem na SQLyog, mozna ustawic kodowanie, ale i tak sa krzaki. Na
stronkach oczywiscie wszystko ok, a te, ktore maja cms - w cms tez ok,
tylko w zadnym gui nie jest ok.
Dzieki, pozdr.,
wgd
>> phpMyAdmin daje radę z UTF. Trzeba tylko ustawić kodowanie dla
>> interfejsu.
>
> ale dziala zdaje sie tylko przy podawaniu jako zrodla danych pliku,
> pzy przeklejaniu przez schowek Windy jest roznie
Nie mam pojęcia, wiem, że przeglądałem UTFowe bazy bez krzaczenia.
> Tabele maja ustawiony default charset na utf8, a navicat pokazuje
> podczas polaczenia encoding 65001 (UTF-8).
a czy zaimportowane dane to tez utf?
czy moze ustawione tylko tabele a dane wczytane w innym kodowaniu?
czy na stronach www jest ustawiany charset na utf?
u mnie zarowno navicat jak i mysql query browser dziajala dobrze.
--
Paweł Chalacis . . . . . . . . . . . . . . . . . . . . . ale o co chodzi?
praca . . . . . . . . . . . . . . . . . . . . . . . http://punktg.com.pl
poza praca . . . . . . . . . . . . . . . . . . http://grek.punktg.com.pl
auto reklama . . . . . . . . . . . . . . . . . . . . http://supersklep.pl
> > Tabele maja ustawiony default charset na utf8, a navicat pokazuje
> > podczas polaczenia encoding 65001 (UTF-8).
>
> a czy zaimportowane dane to tez utf?
> czy moze ustawione tylko tabele a dane wczytane w innym kodowaniu?
Tak, dane z cms (do tych tabel, ktore maja cms) idą w utf-8, bo tak
jest ustawione kodowanie strony (naglowek xml oraz meta), a navicat
pokazuje krzaki.
> czy na stronach www jest ustawiany charset na utf?
Tak, zarowno w cms, jak i w wyjsciowych stronach.
Pozdr.,
wgd
> Spróbuj Mysql Gui Tools. Wszystko w jednym pakiecie. Zawiera Query
> Browser 1.2 który w porównaniu do 1.1.20 wyświetla poprawnie dowolne znaki.
> Zresztą navicat też nie ma problemów tylko trzeba skonfigurować
> poprawnie połączenie ;)
To samo, zadnej roznicy (Query Browser 1.2.3).
Pozdr.,
wgd
A czy jakakikolwiek skrypt php wyciąga te dane poprawnie? Bo może wszystko
jest poustawiane na UTF ale zawartość została źle włożona?
> A czy jakakikolwiek skrypt php wyciąga te dane poprawnie? Bo może wszystko
> jest poustawiane na UTF ale zawartość została źle włożona?
Tak, systemy cms obslugujace niektore z tabel robia poprawnie zarowno wyciaganie jak i upload danych. Chwilowo dopisalem prostego cms'a i tak sobie radze. Nie jest to jednak docelowe rozwiazanie, bo za duzo tego.
Pozdr.,
wgd
>Hm, no w moim przypadku nie daje, sprawdzilem, jest w naglowku i w meta
>utf-8, phpMyAdmin pokazuje kodowanie utf-8, moze cos z serwerem?
Spróbuj wyeksportować bazę z poziomu shella (mysqldump) i obejrzeć plik.
Jeśli plik ktory wyjdzie ma nadal krzaczki - będą kłopoty.
Dla wersji mysql wyższych niż 4.1 przyczyną mogło być wstawianie do bazy
bez dwóch magicznych poleceń:
SET NAMES utf8 COLLATE utf8_polish_ci
SET character_set_results = utf8
a wtedy, jeśli domyślnym kodowaniem bazy jest np. latin1, dane są
przechowywane jako UTF, ale ... w latin1 :)
Uwaga: wszystkie skrypty php odczytują i zapisują to poprawnie, ale
człowiek się dziwi, dlaczego w mysql front czy myadminie mamy krzaki. :)
Mi w takiej sytuacji pomogło:
mysqldump {user/pass/baza} --set_charset=utf8
--default-character-set=latin1 > plik_z_poprawnym_kodowaniem.sql
r.
--
Robert Drózd <rdrozd(na)yes.iq.pl>
http://www.webaudit.pl/blog/ -- użyteczność, marketing, technologie
http://vroobelek.iq.pl/blog/ -- blog prywatny
> Tabele maja ustawiony default charset na utf8, a navicat pokazuje
> podczas polaczenia encoding 65001 (UTF-8).
To, że tabele mają ustawiony UTF-8, nie znaczy że takie kodowanie
faktycznie jest zastosowane. Dzięki temu że różne wersje MySQL mają
różną (albo wcale) obsługę kodowania, zdarzają się pliki gdzie widnieje
np. utf-8/utf8_swedish_ci, a tak na prawdę to latin2/latin2_general_ci.
Więc radzę ręcznie usunąć deklarację kodowania tabel, a potem przy
imporcie pliku wybrać latin2/win1250/inne metodą prób. Bądź otwarcie
pliku w dobrym edytorze i siłowa konwersja na utf8, ew. iconv.
Pzdr
Exe Very Cute