我正在關注如何使用json格式從mysql數據庫讀取數據到android應用的YouTube教程。只要點擊「get json」按鈕,應用程序應該從數據庫中顯示錶格的json格式。我仔細地關注並查看了代碼和php文件,但是我的表格沒有顯示在我的textview中的json格式,而是我不知道的HTML代碼。從MySQL數據庫讀取數據到android
這裏是我的MainActivity.class
public class MainActivity extends AppCompatActivity {
String json_string ;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
public void getJSON(View view)
{
new BackgroundTask().execute();
}
class BackgroundTask extends AsyncTask<Void,Void,String>
{
String JSON_STRING;
String json_url;
@Override
protected void onPreExecute(){
super.onPreExecute();
json_url = "http://www.puc.gava.ph/get_data.php";
}
@Override
protected String doInBackground(Void... voids) {
try {
URL url = new URL(json_url);
HttpURLConnection httpURLConnection = (HttpURLConnection)url.openConnection();
InputStream inputStream = httpURLConnection.getInputStream();
BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(inputStream));
StringBuilder stringBuilder = new StringBuilder();
while((JSON_STRING = bufferedReader.readLine())!=null)
{
stringBuilder.append(JSON_STRING+"\n");
}
bufferedReader.close();
inputStream.close();
httpURLConnection.disconnect();
return stringBuilder.toString().trim();
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return null;
}
@Override
protected void onProgressUpdate(Void... values) {
super.onProgressUpdate(values);
}
@Override
protected void onPostExecute (String result){
TextView textView = (TextView)findViewById(R.id.textView);
textView.setText(result);
json_string=result;
}
}
}
我還沒做過一個分析,因爲我想這樣做,一步一步來。 這裏是我的get_data.php
<?php
$host= "localhost";
$user = "root";
$password ="";
$db = "accounts";
$sql = "select * from user_info";
$con = mysqli_connect($host,$user,$password,$db);
$result = mysqli_query($con,$sql);
$response = array();
while($row = mysqli_fetch_array($result))
{
array_push($response,array("username" => $row[0],"password" => $row[1],"email" => $row[2]));
}
echo json_encode(array("server_response"=>$response));
mysqli_close($con);
?>
我的PHP文件是好的,因爲我測試的鏈接到瀏覽器,它顯示我的表的JSON格式。
這裏有些什麼,我收到我的TextView
<br/>
<b>Notice</b>:Undefined index:
HTTP_ACCEPT_LANGUAGE in <n>/var/www/ph/rd/functions.php<b>49</b></br/>
<html>
<head>
<link type="text/css"href=...........and so on.
謝謝您的時間。
沒有代碼支持您在textview中收到的內容。向我們展示'functions.php'裏面的內容。 –
我不明白先生。你什麼意思?我已經看到其他用戶使用與我的代碼相同的代碼,但他的問題只在解析和json格式的查看是好的。 – newb
但我的目錄中沒有任何「functions.php」。 btw我用WAMP。 – newb