Получение данных из Mysql DB в listView с использованием JSON и PHP

Я пытаюсь получить данные из базы данных mysql в android listview. Но почему-то мне не удалось отобразить данные в listView

Я пытался это сделать с помощью учебника, то есть http://codeoncloud.blogspot.in/2013/07/android-mysql-phpjson-tutorial.html

Ниже мой MainActivity.java

public class MainActivity extends Activity { private String jsonResult; private String url = "http://10.0.2.2/markit/login.php"; private ListView listView; private TextView textv1; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); listView = (ListView) findViewById(R.id.listView1); textv1=(TextView)findViewById(R.id.textView1); accessWebService(); } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.main, menu); return true; } // Async Task to access the web private class JsonReadTask extends AsyncTask<String, Void, String> { @Override protected String doInBackground(String... params) { HttpClient httpclient = new DefaultHttpClient(); HttpPost httppost = new HttpPost(params[0]); try { HttpResponse response = httpclient.execute(httppost); jsonResult = inputStreamToString( response.getEntity().getContent()).toString(); } catch (ClientProtocolException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } return null; } private StringBuilder inputStreamToString(InputStream is) { String rLine = ""; StringBuilder answer = new StringBuilder(); BufferedReader rd = new BufferedReader(new InputStreamReader(is)); try { while ((rLine = rd.readLine()) != null) { answer.append(rLine); } } catch (IOException e) { // e.printStackTrace(); Toast.makeText(getApplicationContext(), "Error..." + e.toString(), Toast.LENGTH_LONG).show(); } return answer; } @Override protected void onPostExecute(String result) { ListDrwaer(); } }// end async task public void accessWebService() { JsonReadTask task = new JsonReadTask(); // passes values for the urls string array task.execute(new String[] { url }); } // build hash set for list view public void ListDrwaer() { List<Map<String, String>> employeeList = new ArrayList<Map<String, String>>(); try { JSONObject jsonResponse = new JSONObject(jsonResult); JSONArray jsonMainNode = jsonResponse.optJSONArray("emp_info"); for (int i = 0; i < jsonMainNode.length(); i++) { JSONObject jsonChildNode = jsonMainNode.getJSONObject(i); String name = jsonChildNode.optString("employee_name"); String number = jsonChildNode.optString("employee_no"); String outPut = name + "-" + number; //textv1.setText(name); //textv1.setText(jsonResult); employeeList.add(createEmployee("employees", outPut)); } } catch (JSONException e) { Toast.makeText(getApplicationContext(), "Error" + e.toString(), Toast.LENGTH_SHORT).show(); } SimpleAdapter simpleAdapter = new SimpleAdapter(this, employeeList, android.R.layout.simple_list_item_1, new String[] { "employees" }, new int[] { android.R.id.text1 }); listView.setAdapter(simpleAdapter); } private HashMap<String, String> createEmployee(String name, String number) { HashMap<String, String> employeeNameNo = new HashMap<String, String>(); employeeNameNo.put(name, number); return employeeNameNo; } } 

Ниже mainactivity.xml

 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context=".MainActivity" > <TableRow android:id="@+id/tableRow1" android:layout_width="wrap_content" android:layout_height="wrap_content" > <TextView android:id="@+id/textView1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="TextView" /> </TableRow> <ListView android:id="@+id/listView1" android:layout_width="match_parent" android:layout_height="wrap_content" > </ListView> </LinearLayout> 

login.php

 <?php $host="localhost"; //replace with database hostname $username="root"; //replace with database username $password=""; //replace with database password $db_name="markit"; //replace with database name $con=mysql_connect("localhost", "root", "")or die("cannot connect"); mysql_select_db("markit")or die("cannot select DB"); $sql = "select * from emp_info"; $result = mysql_query($sql); $json = array(); if(mysql_num_rows($result)){ while($row=mysql_fetch_assoc($result)){ $json['emp_info'][]=$row; } } mysql_close($con); echo json_encode($json); ?> в <?php $host="localhost"; //replace with database hostname $username="root"; //replace with database username $password=""; //replace with database password $db_name="markit"; //replace with database name $con=mysql_connect("localhost", "root", "")or die("cannot connect"); mysql_select_db("markit")or die("cannot select DB"); $sql = "select * from emp_info"; $result = mysql_query($sql); $json = array(); if(mysql_num_rows($result)){ while($row=mysql_fetch_assoc($result)){ $json['emp_info'][]=$row; } } mysql_close($con); echo json_encode($json); ?> 

Изменить это

  String name = jsonChildNode.optString("employee_name"); String number = jsonChildNode.optString("employee_no"); 

в

  String name = jsonChildNode.getString("emp_name"); String number = jsonChildNode.getString("emp_no"); 
Intereting Posts
Источники поддержки библиотеки тестирования в Android Studio Авария Android Emulator с исключением с плавающей запятой Как использовать OpenStreetMap в разработке собственных приложений для Android Необходимо дважды нажать кнопку «Назад», чтобы вернуться к действию Ошибка компилятора: «Курсор не может быть разрешен для типа» Как перемещать объект спрайта с помощью AndEngine (Android) Ошибка java.lang.StackOverFlow. Подозревали слишком много просмотров? Progressbar togther с asyncTask Плавающий видеоплеер (например, проигрыватель YouTube) в android Как проверить, добавлен ли нижний колонтитул в список? Разделение больших классов на внутренние классы в Java Анимация в начале действия прыгает Двойная проверка правильности реализации шаблона владельца фрагмента + Используйте различные типы сборки библиотечного модуля в Android App Module в Android Studio и Gradle Как получить категорию для каждого приложения на устройстве на Android?