Android: Affichage des données de mysql dans un Liste

Fermé
dimass - Modifié par dimass le 13/02/2016 à 14:16
BunoCS Messages postés 15472 Date d'inscription lundi 11 juillet 2005 Statut Modérateur Dernière intervention 25 mars 2024 - 23 févr. 2016 à 15:34
Bonjour tout le monde

je veux récuperer les donnes de mysql et l'afficher dans un listView

j’essaye de récupérer le données avec un code que je trouve dans un tutorial sur internet mais j'ai rien recu rien dans l'emelateur

et d’après le logcat : j’espère que j'ai deux problèmes 1- HttpResponse reponse = client.execute(requete);
2- JSONArray jArray = new JSONArray(stringB.toString());
lorsque je fait le test de code php sur le navigateur sous http://192.168.56.1/affichage/afficheC11.php il affiche correctement

Est ce que quelqu'un peut m'aider svp

Et merci d'avance

package com.example.lenovo.mysecondetest;
 
import android.os.Bundle;
import android.support.design.widget.FloatingActionButton;
import android.support.design.widget.Snackbar;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.Toolbar;
import android.view.View;
import android.widget.ListView;
import android.widget.TextView;
 
import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.client.ClientProtocolException;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.impl.client.DefaultHttpClient;
import org.json.JSONArray;
import org.json.JSONException;
 
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.URI;
import java.net.URISyntaxException;
import java.util.ArrayList;
 
import java.io.BufferedReader;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.util.ArrayList;
import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.NameValuePair;
import org.apache.http.client.HttpClient;
import org.apache.http.client.entity.UrlEncodedFormEntity;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.impl.client.DefaultHttpClient;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
import android.app.ListActivity;
import android.net.ParseException;
import android.os.Bundle;
import android.util.Log;
import android.widget.ArrayAdapter;
import android.widget.Toast;
 
 
public class CdesNonTraiteActivity extends AppCompatActivity {
 
    CdesNonTraite cdesNonTraite;
    ArrayList<CdesNonTraite> cdesNonTraites;
    private ArrayAdapter<String> listAdapter;
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_cdes_non_traite);
        Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
        setSupportActionBar(toolbar);
 
 
        StringBuffer stringB = new StringBuffer("");
        BufferedReader bufR = null;
 
        try {
            HttpClient client = new DefaultHttpClient();
            HttpGet requete = new HttpGet();
            URI uri = new URI("http://192.168.56.1/Affichage/afficheC11.php");
            requete.setURI(uri);
            HttpResponse reponse = client.execute(requete);
            InputStream is = reponse.getEntity().getContent();
            bufR = new BufferedReader(new InputStreamReader(is));
            String ligneLue = bufR.readLine();
            while (ligneLue != null) {
 
                stringB.append(ligneLue);
                stringB.append("\n");
                ligneLue = bufR.readLine();
 
            }
 
 
        } catch (Exception e) {
 
            e.printStackTrace();
        } finally {
            if (bufR != null) {
                try {
                    bufR.close();
                } catch (IOException ioe) {
                    ioe.printStackTrace();
                }
            }
        }
        try {
            JSONArray jArray = new JSONArray(stringB.toString());
            for (int i = 0; i < jArray.length(); i++) {
                cdesNonTraite = new CdesNonTraite();
                cdesNonTraite.setNumOf(jArray.getJSONObject(i).getString("T1").toString());
                cdesNonTraite.setDate(jArray.getJSONObject(i).getString("T2").toString());
                cdesNonTraite.setClient(jArray.getJSONObject(i).getString("T3").toString());
                cdesNonTraite.setModele(jArray.getJSONObject(i).getString("T4").toString());
                cdesNonTraite.setQte(jArray.getJSONObject(i).getString("T5").toString());
                cdesNonTraite.setLance(jArray.getJSONObject(i).getString("T6").toString());
                cdesNonTraite.setDateLance(jArray.getJSONObject(i).getString("T7").toString());
                cdesNonTraite.setCoupe(jArray.getJSONObject(i).getString("T8").toString());
                cdesNonTraite.setDateCoupe(jArray.getJSONObject(i).getString("T9").toString());
 
                this.cdesNonTraites.add(cdesNonTraite);
            }
        } catch (JSONException jex) {
            jex.printStackTrace();
        }
 
        if (cdesNonTraites != null) {
            CdesNonTraiteAdapter adapter = new CdesNonTraiteAdapter(this, cdesNonTraites);
            ListView cdVueTraite = (ListView) findViewById(R.id.list_Tab);
            cdVueTraite.setAdapter(adapter);
 
        }
 
 
    }
}





AfficheC11.php :
<?php
 
$base = mysql_connect ('localhost', 'root', '');
mysql_select_db ('database', $base) ;
 
 
$sql = "SELECT * FROM `titrecol` WHERE `id`=1";
 
$req = mysql_query($sql) ;
 
 while ($row=mysql_fetch_assoc($req)) {    
    $output[]=$row;    
} 
 
print(json_encode($output));
 
 
 ?>
A voir également:

3 réponses

oui, lorsque je fais le test de code php sur le navigateur avec http://192.168.56.1/affichage/afficheC11.php il affiche sous forme json, le problème est comment je peux afficher les données de mysql dans un tableLayout en android ?
1
BunoCS Messages postés 15472 Date d'inscription lundi 11 juillet 2005 Statut Modérateur Dernière intervention 25 mars 2024 3 894
17 févr. 2016 à 14:41
Hello,

Quelles sont les erreurs listées dans le logcat?
Est-ce que tu récupère bien un array JSON?
0
BunoCS Messages postés 15472 Date d'inscription lundi 11 juillet 2005 Statut Modérateur Dernière intervention 25 mars 2024 3 894
23 févr. 2016 à 15:34
oui, lorsque je fais le test de code php sur le navigateur
Ce n'est pas ce que je t'ai demandé... Est-ce que, à la ligne 101 du code ci-dessous, tu récupères bien ton array JSON. Car j'imagine que tu as testé en mode debug pas-à-pas pour voir ce qu'il se passe...

comment je peux afficher les données de mysql dans un tableLayout en android
y'a plusieurs étapes là:
- côté PHP: transformer le résultat de la requête mySQL en JSON
- côté Android:
- récupérer le JSON
- parser le JSON et créer les objets
- créer un adapter pour remplir la liste avec les objets
- créer une vue XML pour le côté joli
0