Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> MSSQL + PHP + francuskie znaki
kr27
post
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






Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Noidea
post
Post #2





Grupa: Zarejestrowani
Postów: 226
Pomógł: 61
Dołączył: 20.08.2010

Ostrzeżenie: (0%)
-----


Poleciłbym ci nowy sterownik do PDO ( http://blogs.iis.net/sqlphp/archive/2010/0...-milestone.aspx ), który radzi sobie z UTF-8. Problem w tym, że z tego co widzę po wymaganiach, to potrzebuje on przynajmniej MSSQL 2005.

Znalazłem też rozwiązanie dla PHP na Linuksie + MSSQL, które też cie nie zainteresuje i kilka rodzajów obejść, typu:
  1. $stmt = $dbh->query( "SELECT CONVERT( varbinary( MAX ), kolumna_nvarchar ) AS kolumna_nvarchar FROM tabela" );
  2. while( $row = $stmt->fetch( PDO::FETCH_ASSOC ) )
  3. {
  4. echo iconv( "UCS-2LE", "UTF-8", $row['kolumna_nvarchar'] );
  5. }
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 4.10.2025 - 19:25