0
JSONを使用して値データベースをアンドロイドに表示するための参照がいくつかありますが、キーワードを見つけるには問題があります。 ここにありますすべての私のコードは、試してみる は、私が作るためにhostingerに私のコードとDBを入れているCMIIWしてください、それは簡単here- データベースmysql phpの値をアンドロイドスタジオのtextviewに表示する方法
PHPコード
dbconfig.php
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "data_kuesioner";
<?php
include 'dbconfig.php';
$conn = new mysqli($servername, $username, $password, $dbname);
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$sql = "SELECT * FROM pertanyaan";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
while($row[] = $result->fetch_assoc()) {
$json = json_encode($row);
}
} else {
echo "0 results";
}
echo $json;
$conn->close();
?>
アンドロイドコードsend_data.php
MainActivity.java
package flix.yudi.okhttp;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.EditText;
import android.widget.TextView;
import java.io.IOException;
import java.util.concurrent.ExecutionException;
import okhttp3.MediaType;
import okhttp3.OkHttpClient;
import okhttp3.Request;
import okhttp3.RequestBody;
import okhttp3.Response;
public class MainActivity extends AppCompatActivity {
private EditText edtText;
private TextView outputText;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
edtText = (EditText) findViewById(R.id.editText1);
outputText = (TextView) findViewById(R.id.textView1);
}
public void downloadUrl(View view) {
String url = "http://" + edtText.getText().toString();
OkHttpHandler handler = new OkHttpHandler();
String result = null;
try {
result = handler.execute(url).get();
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (ExecutionException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
outputText.append(result + "\n");
}
}
OkHttpHandler.java
package flix.yudi.okhttp;
import android.os.AsyncTask;
import okhttp3.OkHttpClient;
import okhttp3.Request;
import okhttp3.Response;
public class OkHttpHandler extends AsyncTask<String, Void, String> {
OkHttpClient client = new OkHttpClient();
@Override
protected String doInBackground(String... params) {
Request.Builder builder = new Request.Builder();
builder.url(params[0]);
Request request = builder.build();
try {
Response response = client.newCall(request).execute();
return response.body().string();
} catch (Exception e) {
}
return null;
}
}
が、私はプログラムを実行すると、アプリが
あなたのURLはjsonではなくhtmlを返しています。クエリでデータが見つからない場合、スクリプトはnon-jsonも出力します。 –
json [here](http://square.github.io/okhttp/)を取得するためのコードが見つかりましたが、コードを置く場所がわかりません "public static final MediaType JSON = MediaType.parse(" application/json; charset = utf-8 ");"、 jsonさんに連絡する簡単なコードがありますか? – Flix