![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 27 Pomógł: 0 Dołączył: 20.03.2007 Ostrzeżenie: (0%) ![]() ![]() |
Witam
Czy orientuje się ktoś z Was jak poprawnie wyświetlać i zapisywać francuskie znaki w PHP w MSSQL ? W Enterprise Manager do tabeli wpisuję np: àâçéèêëîïôûùüÿœæÀÂÇÉÈÊËÎÏÔÛÙÜŸŒÆ Następnie wykonuję kod: echo iconv("Windows-1250", "UTF-8//TRANSLIT//IGNORE", $pole); W rezultacie mam: aâçéeeëîiôuuüyoaAÂÇÉEEËÎIÔUUÜYOA Wiem, że znaku "à" nie ma w kodowaniu 1250 i w tym problem - więc jakie to kodowanie powinno być skoro w tej samej kolumnie mam też zapisane dane w języku polskim, niemieckim oraz czeskim (z nimi nie ma żadnego problemu) Z góry dziękuję Pozdrawiam |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 226 Pomógł: 61 Dołączył: 20.08.2010 Ostrzeżenie: (0%) ![]() ![]() |
Musisz zrobić to tak:
1. Konwersja kodowania UTF-8 => UCS-2 2. Zapis danych w postaci hexadecymalnej 3. Wstawienie do zapytania, które te binarne dane skonwertuje na typ kolumny nvarchar $utf8Str = "zażółć gęślą jaźń àà àààà àà ZAŻÓŁĆ GĘŚLĄ JAŹŃ";
Nie wiem tylko jak wstawić dane binarne w postaci 0x0123abcd jako parametr 'prepared statement' - musisz sobie poszukać na google. Dodatkowo zapytania tworzone w ten sposób będą długie (chodzi o ilość znaków, nie czas wykonywania) - to też może powodować problemy, ale nie jestem pewien. Ten post edytował Noidea 30.01.2011, 13:55:58 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 8.10.2025 - 23:11 |