![]() |
![]() |
![]()
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: 27 Pomógł: 0 Dołączył: 20.03.2007 Ostrzeżenie: (0%) ![]() ![]() |
50% problemu rozwiązane!
SELECT CONVERT( varbinary( MAX ), kolumna_nvarchar ) AS kolumna_nvarchar FROM tabela powyższe pomaga przy odczycie danych. Nawet poprawnie wyświetlają mi się rosyjskie czcionki. Problem natomiast mam cały czas z zapisem. Stosuję odwrotność w postaci: UPDATE tabela SET pole=CONVERT(varbinary(300), :pole ) WHERE id=4 ":pole" przekazuje w PDO przez parametr po konwersji: iconv("UTF-8","UCS-2LE", $zmienna); Wszystko jest ok ale tylko jeśli pod $zmienna przekazuje jeden znak np. "à" - jeśli przekaże kilka znaków np "àà" to wywala mi błąd: Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[HY000]: General error: 10007 Line 1: Incorrect syntax near '�'. [10007] (severity 5) [(null)]' Czy masz jakiś pomysł? Bardzo dziękuję za dotychczasową pomoc. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 4.10.2025 - 12:24 |