ugrás a tartalomhoz

utf8 VS iso probléma új szerverre költözésnél

egyvalaki · 2007. Feb. 4. (V), 21.31
Üdvözletem

Egy hasonló portálon már feltettem kérdésem, de sajnos eddig nem tudtak segíteni, nekem pedig égető lenne...

A régi szerver, ahol eddig voltak weboldalaim, hu-iso-ra volt beállítva, a mysql, phpmyadmin, illetve maguk a honlapok is.
Problémám az, hogy egy új szerverre költözöm, ahol nincs a mysql-ben iso lehetőség, csak utf8. Most azt próbálom elérni, hogy ne kelljen a weboldalaimat átszerkeszteni, mert nagyon nagy macera lenne. Elolvastam több témát erről és kipróbáltam a nagyrészét, de nem sikerült megoldanom.

Az új szerveren a következő lehetőségek vannak a phpmyadmin-ban:

MySQL karakterkészlet: UTF-8 Unicode (adott, nem lehet változtatni)

MySQL kapcsolat egyeztetés:
- latin2_hungarian_ci
- utf8_general_ci

Táblák alapból swedish-re vannak állítva, de lehetőség van utf, illetve latin2 egybevetésre is.

Addig-addig próbálkoztam, amíg a következőket értem el: ha űrlaprról küldök szöveget, azt kalaposan menti (honlapon megjelenítva normál lesz), de ha phpmyadmin-ba viszek fel új sort, az kérdőjelekkel jön le.

Amit el szeretnék érni: űrlapról felküldve is normál Ő és Ű betűket mentsen, illetve phpmyadmin-ba beírva ne kérdőjel jöjjön le. Meg lehet oldani anélkül, hogy az összes weboldalt átszerkeszteném UTF szabványra?

Köszönöm előre is a segítséget!
 
1

Karakterkódolás

janoszen · 2007. Feb. 5. (H), 01.49
A tippem az, hogy ha a myadmin-t ISO kódolásra állítod be, a táblát pedig UTF-8-ra, akkor jól el fogja tárolni. Csak a PHP kódot kell átírni, hogy visszafele megcsinálja a konverziót. Vagy azt kell csinálni, hogy az oldalad szerkezetét utf-8-ra állítod át. Ha ügyesen csináltad meg az oldaladat, nem is akkora munka.
2

megoldva

egyvalaki · 2007. Feb. 5. (H), 19.13
Sajnos nem csináltam meg ügyesen, mert sok csúnyaság mutatkozik, ha átállítom. Ezt a részét még alaposan gyakorolnom kell...

Viszont! Az egész guglit felkutatva találtam egy olyan megoldást, ami segített: a phpmyadmin is latin2, illetve a tábla is és a connectSQL függvénybe beillesztettem a mysql_query("SET NAMES latin2;"); mysql_query("SET collation_connection='latin2_hungarian_ci';"); parancsot, így tökéletesen lefordítja a bejövő és kimenő karaktereket is. Nincs se négyzet, se kérdőjel. Alaposan megizzasztott ez az ügy, de sikerült.
Köszönöm a segítő szándékot!