migracja z MS Access do MySql i problem z kodowaniem
Michał - 13-11-2006 00:47
migracja z MS Access do MySql i problem z kodowaniem
Witam, Potrzebuję pomocy, żeby uporać sie z kodowaniem znaków, Wiem, że temat był już przerabiany wielkokrotnie, ale na mój problem nic konkretnego nie udało mi się znaleźć,
Sytuacja wygląda tak: - jest baza w MS Access, którą mam przenieść do MySql i zrobić interfejs www w php, - przy pomocy MySql migration toolkit przeniosłem bazę, - podczas migracji wybrałem kodowanie: Charset: latin2 Collation: latin2_general_ci mysql> show variables like 'character_set%'; +--------------------------+---------------------------------------------------------+ | Variable_name | Value
+--------------------------+---------------------------------------------------------+ | character_set_client | latin2 | character_set_connection | latin2 | character_set_database | latin2 | character_set_filesystem | binary
| character_set_results | latin2
| character_set_server | latin2
| character_set_system | utf8
| character_sets_dir | C:\Program Files\MySQL\MySQL Server 5.0\share\charsets\ | +--------------------------+---------------------------------------------------------+ 8 rows in set (0.00 sec) mysql> show variables like 'collation%'; +----------------------+-------------------+ | Variable_name | Value | +----------------------+-------------------+ | collation_connection | latin2_general_ci | | collation_database | latin2_general_ci | | collation_server | latin2_general_ci | +----------------------+-------------------+ 3 rows in set (0.00 sec)
- w php.ini mam wpis: default_charset = "latin2"
-w httpd.conf mam wpis: AddCharset ISO-8859-2 .iso8859-2 .latin2 .cen
- używam: MsAcces XP Apache 2.0.54 PHP 5.0.3 MySql 5.0.27-community-nt Windows XP SP2
i teraz problem :) jak robie select * from jakas_tabela; czy to w AquaData Studio czy w MySql Query Browser to dostaję wynik z polskimi znakami, jak robię to samo przez PHP to zamiast polskich znaków mam "?" próbowałem zastosować konwersję kodowania, po tym jak pobiorę dane z bazy ale zanim je wyświetlę na stronie, za pomocą funcji z tej strony: http://php5.pl/php/konwersja_systemu...win1250_i_utf8 przerobiłem wszystkie konwesje i nic, lipa, jak wprowadzę dane z polskimi znakami do bazy przez Aqua Data czy przez MySql Query Browser to mogę je wyświetlić poprawnie przez tego klienta, ale przez www widać "?", (zminiałem też domyślne kodowanie w przeglądarce, wyświetlałem stronę przez IE, FF i Operę z takim samym skutkiem)
czy może mi ktoś powiedzieć co robię nie tak? przeczesuję już internet drugi dzień i jak narazie na nic kokretnego nie trafiłem,
z góry dzięki za wszelką pomoc Michał
Wiesław Szahun - 14-11-2006 00:08
Witam Nie bardzo znam się na PHP, ale miałem podobny problem z moja aplikacją. Efekty miałem identyczny jak Twoje, tj. mnóstwo "?". Pomogło wysłanie na początek "SET NAMES cp852" (ja akurat pracuję w 852) i nie musiłem nic konwertować. Nie mówię, iż pomoże w Twoim przypadku, ale spróbować nie zawadzi.
pozdrawiam Wiesław Szahun
> Witam, > Potrzebuję pomocy, żeby uporać sie z kodowaniem znaków, > Wiem, że temat był już przerabiany wielkokrotnie, ale na mój problem nic > konkretnego nie udało mi się znaleźć, > > > Sytuacja wygląda tak: > - jest baza w MS Access, którą mam przenieść do MySql i zrobić interfejs > www w php, > - przy pomocy MySql migration toolkit przeniosłem bazę, > - podczas migracji wybrałem kodowanie: > * * * * * * * *Charset: latin2 > * * * * * * * *Collation: latin2_general_ci > mysql> *show variables like 'character_set%'; > +--------------------------+------------------------------------------------- --------+ > | Variable_name * * * * * *| Value > > +--------------------------+------------------------------------------------- --------+ > | character_set_client * * | latin2 > | character_set_connection | latin2 > | character_set_database * | latin2 > | character_set_filesystem | binary > > | character_set_results * *| latin2 > > | character_set_server * * | latin2 > > | character_set_system * * | utf8 > > | character_sets_dir * * * | C:\Program Files\MySQL\MySQL Server > 5.0\share\charsets\ | > +--------------------------+------------------------------------------------- --------+ > 8 rows in set (0.00 sec) > mysql> *show variables like 'collation%'; > +----------------------+-------------------+ > | Variable_name * * * *| Value * * * * * * | > +----------------------+-------------------+ > | collation_connection | latin2_general_ci | > | collation_database * | latin2_general_ci | > | collation_server * * | latin2_general_ci | > +----------------------+-------------------+ > 3 rows in set (0.00 sec) > > - w php.ini mam wpis: > default_charset = "latin2" > > -w httpd.conf mam wpis: > AddCharset ISO-8859-2 *.iso8859-2 .latin2 .cen > > - używam: > MsAcces XP > Apache 2.0.54 > PHP 5.0.3 > MySql 5.0.27-community-nt > Windows XP SP2 > > i teraz problem :) > jak robie select * from jakas_tabela; czy to w AquaData Studio czy w > MySql Query Browser to dostaję wynik z polskimi znakami, > jak robię to samo przez PHP to zamiast polskich znaków mam "?" > próbowałem zastosować konwersję kodowania, po tym jak pobiorę dane z > bazy ale zanim je wyświetlę na stronie, za pomocą funcji z tej strony: > http://php5.pl/php/konwersja_systemu...o88592_win1250 _i_utf8 > przerobiłem wszystkie konwesje i nic, lipa, > jak wprowadzę dane z polskimi znakami do bazy przez Aqua Data czy przez > MySql Query Browser to mogę je wyświetlić poprawnie przez tego klienta, > ale przez www widać "?", (zminiałem też domyślne kodowanie w > przeglądarce, wyświetlałem stronę przez IE, FF i Operę z takim samym > skutkiem) > > czy może mi ktoś powiedzieć co robię nie tak? > przeczesuję już internet drugi dzień i jak narazie na nic kokretnego nie > trafiłem, > > > z góry dzięki za wszelką pomoc > Michał >
-- Wysłano z serwisu OnetNiusy: http://niusy.onet.pl
Michał - 14-11-2006 00:57
Witam, udało mi się problem rozwiązać, więc może podziele sie tym co znalalazłem - może komuś się kiedyś przyda:
kodowanie trzeba sprawdzić i ustawić w: - MySql (dodatkowo na początek też wysyłam SET NAMES... :)), - Apach'u - PHP, - edytorze w którym piszemy kod, ja zapominałem o PHP :( polecam lekturę i przemyślenie: http://www.phpwact.org/php/i18n/char...ell_formedness http://www.padawan.info/web/debuggin...th_apache.html
no i posiadanie dodatku "Web Developer" do FF nie zaszkodzi :)
pozdrawiam Michał
Wiesław Szahun napisał(a): > Witam > Nie bardzo znam się na PHP, ale miałem podobny problem z moja aplikacją. > Efekty miałem identyczny jak Twoje, tj. mnóstwo "?". > Pomogło wysłanie na początek "SET NAMES cp852" (ja akurat pracuję w 852) i nie > musiłem nic konwertować. > Nie mówię, iż pomoże w Twoim przypadku, ale spróbować nie zawadzi. > > pozdrawiam > Wiesław Szahun > >> Witam, >> Potrzebuję pomocy, żeby uporać sie z kodowaniem znaków, >> Wiem, że temat był już przerabiany wielkokrotnie, ale na mój problem nic >> konkretnego nie udało mi się znaleźć, >> >> >> Sytuacja wygląda tak: >> - jest baza w MS Access, którą mam przenieść do MySql i zrobić interfejs >> www w php, >> - przy pomocy MySql migration toolkit przeniosłem bazę, >> - podczas migracji wybrałem kodowanie: >> Charset: latin2 >> Collation: latin2_general_ci >> mysql> show variables like 'character_set%'; >> +--------------------------+------------------------------------------------- > --------+ >> | Variable_name | Value >> >> +--------------------------+------------------------------------------------- > --------+ >> | character_set_client | latin2 >> | character_set_connection | latin2 >> | character_set_database | latin2 >> | character_set_filesystem | binary >> >> | character_set_results | latin2 >> >> | character_set_server | latin2 >> >> | character_set_system | utf8 >> >> | character_sets_dir | C:\Program Files\MySQL\MySQL Server >> 5.0\share\charsets\ | >> +--------------------------+------------------------------------------------- > --------+ >> 8 rows in set (0.00 sec) >> mysql> show variables like 'collation%'; >> +----------------------+-------------------+ >> | Variable_name | Value | >> +----------------------+-------------------+ >> | collation_connection | latin2_general_ci | >> | collation_database | latin2_general_ci | >> | collation_server | latin2_general_ci | >> +----------------------+-------------------+ >> 3 rows in set (0.00 sec) >> >> - w php.ini mam wpis: >> default_charset = "latin2" >> >> -w httpd.conf mam wpis: >> AddCharset ISO-8859-2 .iso8859-2 .latin2 .cen >> >> - używam: >> MsAcces XP >> Apache 2.0.54 >> PHP 5.0.3 >> MySql 5.0.27-community-nt >> Windows XP SP2 >> >> i teraz problem :) >> jak robie select * from jakas_tabela; czy to w AquaData Studio czy w >> MySql Query Browser to dostaję wynik z polskimi znakami, >> jak robię to samo przez PHP to zamiast polskich znaków mam "?" >> próbowałem zastosować konwersję kodowania, po tym jak pobiorę dane z >> bazy ale zanim je wyświetlę na stronie, za pomocą funcji z tej strony: >> > http://php5.pl/php/konwersja_systemu...o88592_win1250 > _i_utf8 >> przerobiłem wszystkie konwesje i nic, lipa, >> jak wprowadzę dane z polskimi znakami do bazy przez Aqua Data czy przez >> MySql Query Browser to mogę je wyświetlić poprawnie przez tego klienta, >> ale przez www widać "?", (zminiałem też domyślne kodowanie w >> przeglądarce, wyświetlałem stronę przez IE, FF i Operę z takim samym >> skutkiem) >> >> czy może mi ktoś powiedzieć co robię nie tak? >> przeczesuję już internet drugi dzień i jak narazie na nic kokretnego nie >> trafiłem, >> >> >> z góry dzięki za wszelką pomoc >> Michał >> > >
zanotowane.pldoc.pisz.plpdf.pisz.pleffulla.pev.pl
|
[mysql] =?ISO-8859-2?Q?Za=E6mienie=2E=2E=2E_jak_wy=B6wietli=E6?==?ISO-8859-2?Q?=2E=2E=2E?=
[mysql] =?ISO-8859-2?Q?wielko=B6=E6_bazy_a_stabilno=B6=E6=2C?==?ISO-8859-2?Q?_podzia=B3_du=BFej_bazy_a_powi=B1zania_tabel?=
[MySQL] =?ISO-8859-2?Q?Wy=B6wietlenie_kolejnej_pozycji=2C_?==?ISO-8859-2?Q?jak=B1_mia=B3by_dany_rekord=2C_gdybym_czyta=B3 _?==?ISO-8859-2?Q?wg_konkretnych_kryteri=F3w=2E_Da_si=EA_=3F?=
[mysql 4.0.x] przenoszenie kolum =?ISO-8859-2?Q?mi=EAdzy_bazam?==?ISO-8859-2?Q?i_cd_=2E=2E=2E_?=
[MySQL] =?ISO-8859-2?Q?z=B3=B1czenie_tabeli_u=BFytkownik_i?==?ISO-8859-2?Q?_zdj=EAcia_z_wyborem_zdj=EAcia_domy=B6lnego?=
[MySQL] Jak =?ISO-8859-2?Q?wpisa=E6_do_tabeli_pozycje_dl?==?ISO-8859-2?Q?a_wierszy_gdybym_te_wiersze_wybiera=B3_w_ok?== ?ISO-8859-2?Q?re=B6lonej_kolejno=B6ci_=3F?=
Gdzie MySQL 4.1, a gdzie 5.0?
[MySQL 4.0...4.1] zabezpieczenie przed =?ISO-8859-2?Q?jednoczesn?==?ISO-8859-2?Q?=B1_edycj=B1?=
[mysql 5.x] jak =?ISO-8859-2?Q?zrealizowa=E6_zapytanie=3F_cz?==?ISO-8859-2?Q?yli_podzapytanie_i_wi=EAcej_ni=BF_jeden_rz=B1? ==?ISO-8859-2?Q?d_wynik=F3w?=
MySQL - jak =?ISO-8859-2?Q?wyeksportowa=E6_zawarto=B6=E6_wie?==?ISO-8859-2?Q?lkiej_tabeli?=
zanotowane.pldoc.pisz.plpdf.pisz.ploefg.opx.pl
Cytat
Decede mihi sole - nie zasłaniaj mi słonca. Gdy kogoś kochasz, jesteś jak stworzyciel świata - na cokolwiek spojrzysz, nabiera to kształtu, wypełnia się barwą, światłem. Powietrze przytula się do ciebie, choćby był mróz, a ty masz w sobie tyle radości, że musisz ją rozdawać wokoło, bo się w tobie nie mieści Hoc fac - tak czyń. A tergo - od tyłu; z tyłu. I czarne włosy posiwieją. Safona |
|