IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Android Discussion :

Récupérer données de mysql et l'afficher a android


Sujet :

Android

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Décembre 2010
    Messages
    182
    Détails du profil
    Informations forums :
    Inscription : Décembre 2010
    Messages : 182
    Par défaut Récupérer données de mysql et l'afficher a android
    Bonsoir,

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

    comment je suis débutante j’essaye de récupérer seulement le données mais j'ai rien recu rien dans l'emelateur

    code php
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    <?php
    $link = mysql_connect('127.0.0.1', 'root', '');
    $db = mysql_select_db('tu', $link); 
    $sql=mysql_query("SELECT * FROM tblville");
     
     
    while($row = mysql_fetch_array($sql)) {
            $v = $row['ID_ville'] ;
    		$v1=$row['Nom_ville'];
    		echo $v;
     
    		echo $v1;
    }
    ?>
    code java
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    public class ReponseTestActivity extends Activity {
        /** Called when the activity is first created. */
    	 TextView txt;
     
    	String rep;
    	public static URL url;
        @Override
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.main);
            LinearLayout rootLayout = new LinearLayout(getApplicationContext());  
    		txt = new TextView(getApplicationContext());  
    		rootLayout.addView(txt);  
    		setContentView(rootLayout);  
     
    		try {
    	    		url = new URL("http://mon@ip/android/lecture.php");
    	    	} catch (MalformedURLException e) {
    	    		// TODO Auto-generated catch block
    	    		e.printStackTrace();
     
    	    	}
    	        rep = postURL(url, "test");
     
    	        txt.setText(rep);
        txt.setText(rep);
     
        }
        public static String postURL(URL a_Url, String a_sParamsToPost)
        {
        	StringBuilder Sb = new StringBuilder();
     
        	//recup du saut de ligne
        	String sLineSep = null;
        	try
        	{
        		sLineSep = System.getProperty("line.separator");
        	}
        	catch (Exception e)
        	{
        		sLineSep = "\n\r";
        	}
     
        	try
        	{
        		HttpURLConnection UrlConn = (HttpURLConnection) a_Url.openConnection();
        		UrlConn.setRequestMethod("POST");
        		UrlConn.setAllowUserInteraction(false);
        		//envoyer des params
        		UrlConn.setDoOutput(true);
     
        		//poster les params
        		PrintWriter ParamWriter = new PrintWriter(UrlConn.getOutputStream());
     
        		ParamWriter.print(a_sParamsToPost);
        		//fermer le post avant de lire le resultat ... logique
        		ParamWriter.flush();
        		ParamWriter.close();
     
        		//Lire la reponse
        		InputStream  Response = UrlConn.getInputStream();
        		BufferedReader BufReader = new BufferedReader(new InputStreamReader(Response));
        		String sLine;
     
        		while ((sLine = BufReader.readLine()) != null)
        		{
        		Sb.append(sLine+"\n\r");
        		Sb.append(sLineSep);
    		    //System.out.println(Sb);
        		}
        		//deconnection
        		UrlConn.disconnect();
        	}
        	catch(ConnectException ctx)
        	{
        		//Log.fatal(this, "Connection lost : server may be down");
        		ctx.printStackTrace();
        	}
        	catch (Exception e)
        	{
        		//Log.error(this,"postURL : "+e.getMessage());
        		e.printStackTrace();
        	}
     
        	//Log.debug(this, "retour url="+o_oSb.toString());
        	return Sb.toString();
        }
    }
    merci de m'aider a comprendre l'erreur

  2. #2
    Membre éclairé
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2012
    Messages
    345
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2012
    Messages : 345
    Par défaut
    Voici un lien qui explique tout:

    http://mobilerie.blogspot.fr/2012/02...-json-php.html

    Vivien

  3. #3
    Membre confirmé
    Inscrit en
    Décembre 2010
    Messages
    182
    Détails du profil
    Informations forums :
    Inscription : Décembre 2010
    Messages : 182
    Par défaut
    Merci je vais essayer ce tuto

  4. #4
    Membre confirmé
    Inscrit en
    Décembre 2010
    Messages
    182
    Détails du profil
    Informations forums :
    Inscription : Décembre 2010
    Messages : 182
    Par défaut
    Bonjour,

    j'ai essayé ce tuto et ca marche maisje veux utiliser un listeview j'ai changé le code mais il ya des exception
    code java
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    package com.work;
     
    import java.io.BufferedReader;
    import java.io.InputStream;
    import java.io.InputStreamReader;
    import java.util.ArrayList;
    import java.util.HashMap;
     
    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.Activity;
    import android.app.ListActivity;
    import android.net.ParseException;
    import android.os.Bundle;
    import android.util.Log;
    import android.widget.ArrayAdapter;
    import android.widget.ListView;
    import android.widget.SimpleAdapter;
    import android.widget.Toast;//
     
    public class ReturndATAActivity extends Activity{
        /** Called when the activity is first created. */
    	 private ListView listview;
    	 @Override
    	    public void onCreate(Bundle savedInstanceState) {
    	        super.onCreate(savedInstanceState);
     
    	        listview=(ListView) this.findViewById(R.id.listView1);
    	        setContentView(R.layout.main);
    	        String result = null;
    	     InputStream is = null;
    	     JSONObject json_data=null;
    	     ArrayList<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>();
    	  //   ArrayList<String> donnees = new ArrayList<String>();
    	     ArrayList<HashMap<String, String>> donnees = new ArrayList<HashMap<String, String>>();
     
    	     try{
    	     //commandes httpClient
    	     HttpClient httpclient = new DefaultHttpClient();
    	        HttpPost httppost = new HttpPost("http://10.0.2.2/PFA/lecture.php");
    	        httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
    	        HttpResponse response = httpclient.execute(httppost);
    	        HttpEntity entity = response.getEntity();
    	        is = entity.getContent();
    	     }
    	     catch(Exception e){
    	      Log.i("taghttppost",""+e.toString());
    	            Toast.makeText(getBaseContext(),e.toString() ,Toast.LENGTH_LONG).show();
    	       }
     
     
    	     //conversion de la réponse en chaine de caractère
    	        try
    	        {
    	         BufferedReader reader = new BufferedReader(new InputStreamReader(is,"UTF-8"));
     
    	         StringBuilder sb  = new StringBuilder();
     
    	         String line = null;
     
    	         while ((line = reader.readLine()) != null) 
    	         {
    	         sb.append(line + "\n");
    	         }
     
    	         is.close();
     
    	         result = sb.toString();
    	        }
    	        catch(Exception e)
    	        {
    	         Log.i("tagconvertstr",""+e.toString());
    	        }
    	        //recuperation des donnees json
    	        try{
    	          JSONArray jArray = new JSONArray(result);
     
    	             for(int i=0;i<jArray.length();i++)
    	             {
     
    	                   json_data = jArray.getJSONObject(i);
    	             ///   json_data.getString("contenue"));
    	               //    donnees.add(json_data.getString("title"));
    	                   HashMap<String, String> map;
     
     
    	       	        map = new HashMap<String, String>();
     
    	       	        map.put("titre", json_data.getString("contenue"));
     
    	       	        map.put("description",  json_data.getString("title"));
     
     
    	       	        donnees.add(map);
     
     
    	               }
    	           //    setListAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_expandable_list_item_1, donnees));
     
    	             SimpleAdapter mSchedule = new SimpleAdapter (this.getBaseContext(), donnees, R.layout.affichageitem,
    	  	               new String[] { "titre", "description"}, new int[] { R.id.titre, R.id.description});
     
    	  	        //On attribut Ã* notre listView l'adapter que l'on vient de créer
    	  	       listview.setAdapter(mSchedule);
     
     
     
    	 }
     
     
    	            catch(JSONException e){
    	             Log.i("tagjsonexp",""+e.toString());
    	            } catch (ParseException e) {
    	             Log.i("tagjsonpars",""+e.toString());
    	       }
     
    	    }
    }
    code affichageitem
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
     
    <?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:orientation="horizontal"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        >
     
     
     
    	<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    	    android:orientation="vertical"
    	    android:layout_width="fill_parent"
    	    android:layout_height="wrap_content"
    	   	android:layout_gravity="center_vertical"
    	   	android:paddingLeft="10px"
    	    android:layout_weight="1"
    	    >
     
    	    <TextView android:id="@+id/titre"
    	         android:layout_width="fill_parent"
    	         android:layout_height="fill_parent"
    	         android:textSize="18px"
    	         android:textStyle="bold"
     
    	         />
     
    	    <TextView android:id="@+id/description"
    	         android:layout_width="fill_parent"
    	         android:layout_height="fill_parent"
    	         />
     
        </LinearLayout>
     
    </LinearLayout>
    code php
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    <?php
    // on se connecte à notre base  pour recuperer les data
    $base = mysql_connect ('localhost', 'root', '');  
    mysql_select_db ('basemusee', $base) ;  
    $req =mysql_query("SELECT * from actualites");
    while ($row=mysql_fetch_array($req))
    {    
        $output[]=$row;    
    } 
    //on encode en JSON 
    print(json_encode($output));
    //mysql_free_result ($req);  
     
    ?>

  5. #5
    Membre très actif
    Homme Profil pro
    Ingénieur Informatique et Développeur Android
    Inscrit en
    Janvier 2010
    Messages
    384
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Ingénieur Informatique et Développeur Android

    Informations forums :
    Inscription : Janvier 2010
    Messages : 384
    Par défaut
    Bonjour,
    je ne vois pas dans le fichier xml la déclaration de ListViiew.
    tu dois déclarer ListView puis dans une autre fichier xml tu dois déclarer le contenu de listview comme exemple (text view et image ) c'est l'inflater.
    Puis lorsque tu recupère tes données tu le passe à un adapter qui va remplir ta ListView
    voilà un exemple http://www.vogella.com/articles/Andr...w/article.html

  6. #6
    Membre confirmé
    Inscrit en
    Décembre 2010
    Messages
    182
    Détails du profil
    Informations forums :
    Inscription : Décembre 2010
    Messages : 182
    Par défaut
    Bonjour,
    merci pour le tuto
    voici main.xml
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
     
    <?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:orientation="vertical" >
     
        <TextView
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:text="@string/hello" />
     
        <ListView
            android:id="@+id/listView1"
            android:layout_width="match_parent"
            android:layout_height="wrap_content" >
        </ListView>
     
    </LinearLayout>
    affichageitem.xml définie le contenue de listview (textviex,textview)
    et j'ai ajouter un array adapter
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    SimpleAdapter mSchedule = new SimpleAdapter (this.getBaseContext(), donnees, R.layout.affichageitem,
    	  	               new String[] { "titre", "description"}, new int[] { R.id.titre, R.id.description});
     
     
    	  	       listview.setAdapter(mSchedule);
    mais ça marche pas

Discussions similaires

  1. [MySQL] récupérer les donnes d'une session pour afficher la table?
    Par keokaz dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 16/01/2010, 20h53
  2. Réponses: 2
    Dernier message: 16/01/2010, 11h52
  3. alivepdf récupérer données non-affichées
    Par papy_taupe dans le forum Flex
    Réponses: 8
    Dernier message: 02/04/2009, 14h20
  4. [MySQL] Récupérer des données de MySQL et les envoyer dans un PDF
    Par cdevl32 dans le forum PHP & Base de données
    Réponses: 12
    Dernier message: 16/03/2009, 20h53
  5. [FPDF] récupérer données mysql et insérer dans une facture pdf préfaite
    Par faucon54 dans le forum Bibliothèques et frameworks
    Réponses: 12
    Dernier message: 08/05/2007, 16h44

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo