2011-03-01 11 views
1

このサイトは、あるサーバーで動作し、他のサーバーで動作します。英語以外の文字でDBに提出するサイトテキストを入力すると、それが保存され、コアクタがレンダリングされます。たとえば、「ПриветВсем」と入力すると、表示されるサイトに同じテキストが表示されます。Zend_SoapクライアントとSoapServer UTF-8エンコーディングの問題

フィールドとテーブルなどのすべてのMySQL照合は、ページ上の メタコンテンツエンコードutf8_general_ciあるにもUTF-8サイト上など

私はphpMyAdminのでDBにアクセスする場合、私はКонÑÑ,наNを参照してくださいが、phpMyAdminの

上のように、 инПаР私がそれをПриветВсемに変更すると、サイトで私は????????を見ます????

Windowsがインストールされた2つの異なるサーバーのローカルテストでは、このように機能しませんでした。しかし、centOSオンラインサーバーに展開した後は、このようなバカムな作業をします。

UTF-8にテキストを二重にエンコードするように見えます。私はどこにいるのか分からない。

Zend_Soap_Client ::またはSoapServer ::またはMySQLエンコーディング。

私はMysqlのアイデアを拒否しましたが、それはMySQlなら間違って保存され、余分なデータを送信する必要があるからです。

答えて

0

おそらく、Zend_Soap_ClientまたはSoapServerをutf8に設定する必要がありますか? Zend_Soap_Clientの場合、これは次のようにすることができます:

$client = new Zend_Soap_Client("http://my.site/my.wsdl", array('encoding' => 'UTF-8'));