php/mysql oldal mozgatasa - karakterkodolasi problema

Fórumok

Hi!

Valoszinuleg mar leragott csont a tema, de 2 oranyi forumolvasas utan sem talaltam megoldast a problemamra.

Van 2 tarhelyszolgaltato, mindkettohoz kizarolag ftp / phpmyadmin "feluleten" ferek hozza, es az AAA szolgaltatotol szeretnek egy php/ mysql oldalt atvinni BBB tarhelyszolgaltatohoz. A gond az adatbazis atvitelevel van. AAA szolgaltatonal az adatbazist exportalom, es BBB- nel importalom (phpmyadmin), de az sql- bol kiolvasott o" es u" ekezetek helyett kerdojelek jelennek meg.

Sokan belefutottak ebbe a problemaba, de valahogy nem sikerult forumok alapjan megoldanom. Probalgattam iconv- vel UTF-8, isoo8859-1, iso8859-2 konvertalgatni az adatbazis dumpot, de sikert sajnos nem ertem el. Valamilyen oknal fogva most live CD- rol (knoppix 6) vagyok kenytelen dolgozni. Az adatbazis dumprol a file program ezt mondja:


UTF-8 Unicode English text, with very long lines

Probalgattam a headert is allitgatni mindenfele, de az sem segitett.

AAA szolgaltatonal a phpmyadmin az osszes tabla kodolasara ezt mondja:

 latin1_swedish_ci 

.

Igazabol a kerdesem elmeleti is lehetne, hogy ha nincs konzolos hozzaferes, csak phpmyadmin, akkor miszerint erdemes az ilyen oldalkoltozteteseket megcsinalni, mit kell figyelembe venni, mit kell megnezni, es persze adott esetben hogy kellene helyrehoznom.

Koszi a valaszokat.

Hozzászólások

Az én tapasztalatom az, hogy:

- az exportálásnál és az importálásnál használj azonos karakterkészletet azaz, ha latin2-be exportálsz, akkor latin2-be importálj, továbbá

- a php kódban kapcsolódás után, az adatbázis kiválasztása előtt add ki ezt a parancsot: @mysql_query("SET NAMES latin2");

ALTER TABLE táblanev CONVERT TO CHARACTER SET utf8 COLLATE utf8_hungarian_ci
Ez megy phpmyadminba is.. ahány tábla annyiszor, értelemszerüen lecserelve a táblanevet a saját tábla neveddel.
ekkor az AAA szolgáltatónál is utf8 ba lesznek a táblák..

pch

Gyanítom, hogy a kérdőjel a php beállítások miatt jelenik meg. Megfelelő php konfigurációval keresztbe lehet tenni.

Üdv,
Dw.

"Jegyezze fel a vádhoz - utasította Metcalf őrnagy a tizedest, aki tudott gyorsírni. - Tiszteletlenül beszélt a feljebbvalójával, amikor nem pofázott közbe."