0

以下のコードを使用して、Android から utf-8 の PHP アプリケーションに POST リクエストを送信します。

List<NameValuePair> params = new ArrayList<NameValuePair>();
params.add(new BasicNameValuePair(Site.SQL_QUERY, "just a test 東京"));

UrlEncodedFormEntity urlEncodedFormEntity = new UrlEncodedFormEntity(params);
urlEncodedFormEntity.setContentEncoding(HTTP.UTF_8);
httppost.setEntity(urlEncodedFormEntity);

HttpResponse response = httpclient.execute(httppost);
BufferedReader reader = new BufferedReader(new inputStreamReader(response.getEntity().getContent(), HTTP.UTF_8));
String result = reader.readLine();

エンコーディングをUTF-8に設定しましたが、文字列に含まれる日本語が正常に表示されません。

ここに私のPHPコード(cakePHP)があります。パラメータをダンプするだけです。

function sqlQuery(){
   var_dump($this->params['form']['sql_query']);exit;
}

「ただのテスト□□」のような表示になります。

私も試してみました

mb_convert_encoding ($this->params['form']['sql_query'],"UTF-8")

しかし、問題は続きます...

誰かが私を助けることができますか?ありがとうございました

4

1 に答える 1

3

これは、Android から UTF-8 データを送信する際の問題でした。to をエンコードする必要があることを除いて、コードは正常に機能しStringます Base64Base64サーバー PHP では、 Stringをデコードするだけです。それは私のために働いた。コードが必要な場合は共有できます。

于 2012-11-30T13:24:33.517 に答える