クライアント文字セットは必要ですが、十分ではありません:
ini_set('mssql.charset', 'UTF-8');
PHPを介して(Webフォームからの)UTF-8データをMSSQL2008に挿入する方法を2日間検索しました。できないところはどこでも読んでいますが、最初にUCS2に変換する必要があります(サイファーのソリューションが推奨するように)。Windowsでは、Mac OSXで開発しているため、SQLSRVは良いソリューションであると言われましたが、試すことができませんでした。
ただし、FreeTDSマニュアル(PHP mssqlがOSXで使用するもの)には、冒頭の引用符の前に文字「N」を追加するように記載されています:
mssql_query("INSERT INTO table (nvarcharField) VALUES (N'űáúőűá球最大的采购批发平台')", +xon);
この議論によると、N文字はサーバーにUnicodeに変換するように指示します。https://softwareengineering.stackexchange.com/questions/155859/why-do-we-need-to-put-n-before-strings-in-microsoft -sql-server