1. Viktor R, 24.12.2011 #1
    Viktor R

    Viktor R Threadstarter Neuer Benutzer

    Hallo zusammen,

    ich habe schon einige Beispiele zum Titel gefunden, dennoch klappt es bei mir nicht. Nach dem ich die Activity starte, erhalte ich nur eine Textview, jedoch nicht ListView. Ich habe das php file im Browser geöffent, die Daten werden von der DB abgefragt. Ich vermute, dass es an der Übergabe an das JSON Objekt liegen kann, bin mir aber nicht sicher.
    Was ich gemacht habe:

    Android Manifest angepasst (Uses Permission...)
    Activity implementiert (Wäre ListActivity sinnvoller?)
    php script
    DB Treiber "mysql-connector-java-5.1.18-bin.jar" zum Projekt hinzugefügt
    main.xml mit einer Text und einer ListView erstellt

    Anbei poste ich mein Code:


    Code:
    public class DB_AbfrageActivity extends Activity {
        InputStream is;
        ArrayList<String> results=new ArrayList<String>();
        JSONObject json_data;
        ArrayList<NameValuePair> nameValuePairs=new ArrayList<NameValuePair>();
        
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.main);       
        }
        
        public void getData(){
            String result="";
            
        try{
                HttpClient httpclient=new DefaultHttpClient();
                HttpPost httppost=new HttpPost("http://localhost/mysql.php");
                httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
                HttpResponse response=httpclient.execute(httppost);
                HttpEntity entity=response.getEntity();
                is=entity.getContent();
            }catch (Exception e){
                Log.e("log_tag", "Fehler bei der http Verbindung "+e.toString());
            }
            
            try{
                BufferedReader reader=new BufferedReader(new InputStreamReader(is,"utf8_general_ci"),8);
                StringBuilder sb=new StringBuilder();
                String line="0";
                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());
            }
            
            try{
                
                JSONArray jArray=new JSONArray(result);
                for(int i=0;i<jArray.length();i++){
                    json_data=jArray.getJSONObject(i);
                    results.add((String) json_data.get("artikel")+" "+json_data.get("menge")+" "+json_data.get("bez")+" "+json_data.get("zeit"));
                }
                fillList();
            }catch (JSONException e){
                Log.e("log_tag", "Error parsing data "+e.toString());
            }
        }
        
        public void fillList(){
            ListAdapter adapter=new ArrayAdapter(this,android.R.layout.simple_list_item_1, results);
            ListView list=(ListView)findViewById(R.id.listView1);
            list.setAdapter(adapter);
        }
        
    }
    
    gruß

    Viktor
     
  2. Maddi, 24.12.2011 #2
    Maddi

    Maddi Android-Hilfe.de Mitglied

    Versuchs mal so:
    Code:
     String result = EntityUtils.toString(entity, HTTP.UTF_8);
    
        // parse json data
        try {
            JSONArray jArray = new JSONArray(result);                           
            for (int i = 0; i < jArray.length(); i++) {
            JSONObject json_data = jArray.getJSONObject(i);
    ....
    
    oder einfach
    Code:
    ...
    sb.deleteCharAt(0);
    String result = sb.toString();
    result.trim();
            }catch (Exception e){             Log.e("log_tag","Error converting result "+e.toString());         }
    ...
    
     
Die Seite wird geladen...
Ähnliche Themen - MySQl ListView ausgeben Forum Datum
[GELÖST] Android PHP MySQL Android App Entwicklung 05.05.2017
MySQL Nutzen für Android App Android App Entwicklung 03.12.2016
MySQL Connection Android App Entwicklung 22.11.2016
PHP MySQL Android App Entwicklung 20.10.2016
Fehler bei der Datenabfrage(mysql-php) Android App Entwicklung 09.09.2016
Download image from mysql Android App Entwicklung 07.06.2016
[ERLEDIGT] Listview mit Datenbank über Custom ArrayList verbinden Android App Entwicklung 22.04.2017
[ERLEDIGT] Drawer mit scrollbarem Listview Android App Entwicklung 27.03.2017
ListView fix am unteren Bildschirmrand ausgeben Android App Entwicklung 01.03.2017
ProgressBar in ListView Android App Entwicklung 03.01.2017