.radex
6.10.2007, 10:57:35
Mam straszny problem z transportowaniem danych pomiędzy różnymi serwerami (danych z bazy MySQL) przy kodowaniu UTF-8 (z ISO-8859-2 nie ma problemów, jesli sie zmieni kodowanie za pomocą np. programu gżegżółka), więc wpadłem na taki prosty pomysł, aby do bazy wysyłać zakodowane polskie znaki,np:
ą - &$a;
Ź - &$X;
itd.
Czy jest sens takiego kodowania (a przy pokazywaniu odkodowania) - czy jest jakieś rozwiązanie, czy będzie to bardzo spowalniało czy tylko trochę no i jaki jest najszybszy sposób takiego kodowania (tj.coś oprócz str_replace chyba że własny algorytm)
tomeksobczak
6.10.2007, 12:03:56
a nie lepiej przy eksporcie i imporcie zadbac o kodowanie UTF??
.radex
6.10.2007, 12:19:20
Używając PMA przy eksporcie nie ma możliwości wybrania kodowania. Natomiast przy imporcie jest, ale sądzę że problem jest na poziomie eksportu (polskie litery w UTF to dwa znaki - pierwszy pozostaje ok, a drugi zamienia się na kratkę (znak poniżej 30 bodajże) lub na znak zapytania)
tomeksobczak
6.10.2007, 16:51:18
hmmm
nigdy nie miałem takich problemów podczas przenoszenia baz a wszystko robię w UTF-8
sprawdz moze jakie masz "MySQL connection collation:" na stronie glownej pma
cicik
6.10.2007, 21:58:27
Ja tam zawsze na początku listy zapytań wstawiam polecenie "set names" i wtedy zawsze jest dobrze.
.radex
7.10.2007, 08:33:34
@tomeksobczak - System porównań dla połączenia MySQL: utf8_unicode_ci
Tutaj coś zmieniać przy eksporcie?
@cicik - jeśli dobrze rozumiem o co Ci chodzi to sie nie da, bo jak powiedziałem - znaki się psują już po eksporcie.
EDIT:
Coś zmieniłem i teraz po eksporcie znaki się nie psują, ale co z tego skoro po załadowaniu na inny serw się psują :/
EDIT:
Jednak się psują, z tym że nie zamieniają się na kratki, a na jakieś inne znaki...
tomeksobczak
7.10.2007, 08:49:33
ja uzywam utf8_general_ci
raz musialem uzyc utf8_bin przy przeniesieniu na inna architekture (x86 -> SPARC)
.radex
10.10.2007, 14:24:18
nie działa :/
SzamanGN
11.10.2007, 15:12:10
Po wpisie:
mysql_connect($serwerMySQL,$uzytkownikMySQL,$hasloMySQL);
dodaj:
mysql_query('set CHARset latin2');
powinno rozwiązać problemy.
.radex
11.10.2007, 20:07:39
to nic nie da. Koduje dobrze, ale ten gów****y SQL jest strasznie upierdliwy jeśli chodzi o kodowanie :/
matix
11.10.2007, 20:25:55
.radex
12.10.2007, 17:33:02
czy proponujesz przed eksportem zamienić wszytko w bazie na inne kodowanie, a po imporcie znów zmienić? Dobry pomysł, z tym że mam dwa pytania:
1. Skąd mam wiedzieć, czy z innymi kodowaniami nie będzie się działo to samo?
2. Jak wyciągnąć wszystkie teksty z bazy?
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę
kliknij tutaj.