2
Webサービスからmysqlデータベースを読み込むはずのAndroidアプリケーションがあります。
これは、Web serivceのコードです:httpclientを使用したWebサービスからの読み取り
$q=mysql_query("SELECT * FROM Rates");
while($e=mysql_fetch_assoc($q))
$output[]=$e;
print(json_encode($output));
mysql_close();
、これは私のアプリケーションのコードです:結果の文字列がクエリを取得していないいくつかの理由
public void getQuery() {
String result = "";
InputStream is;
try{
HttpClient httpclient = new DefaultHttpClient();
HttpGet httpget = new HttpGet("http://dakatora.co.il/android/androidsql.php");
HttpResponse response = httpclient.execute(httpget);
HttpEntity entity = response.getEntity();
is = entity.getContent();
}catch(Exception e){
Log.e("log_tag", "Error in http connection "+e.toString());
is = new InputStream() {
@Override
public int read() throws IOException {
// TODO Auto-generated method stub
return 0;
}
};
}
try{
BufferedReader reader = new BufferedReader(new InputStreamReader(is,"iso-8859-1"),8);
StringBuilder sb = new StringBuilder();
String line = null;
while ((line = reader.readLine()) != null) {
sb.append(line + "\n");
}
is.close();
result=sb.toString();
}catch(Exception e){
Log.e("log_tag", "Error converting result "+e.toString());
}
//parse json data
、代わりにありますちょうど "\ n"になります。 誰かが間違っていることを教えてもらえますか?
あなたは、私は次のようなエラーが権利を取得した。 致命的なエラーは:行11 に/var/www/vhosts/dakatora.co.il/httpdocs/android/androidsql.phpで未定義の関数json_encode()を呼んで私はやらなければなりませんか? – eladrich
あなたはおそらく古いPHPバージョンです。 json_encode()はv5.2から標準になったので、古いPECLパッケージ(http://pecl.php.net/package/json)を試してみるか、最新のPHPバージョンにアップグレードする必要があります。 –
ありがとう、私は私ができることがわかります(私はJavaアプリケーションを書くだけで、Webサービスは私の同僚によって維持されます)。 – eladrich