Android php mysql json
Fermé
wissem81
Messages postés
6
Date d'inscription
jeudi 24 avril 2014
Statut
Membre
Dernière intervention
5 mai 2014
-
Modifié par wissem81 le 24/04/2014 à 16:32
wissem81 Messages postés 6 Date d'inscription jeudi 24 avril 2014 Statut Membre Dernière intervention 5 mai 2014 - 25 avril 2014 à 17:35
wissem81 Messages postés 6 Date d'inscription jeudi 24 avril 2014 Statut Membre Dernière intervention 5 mai 2014 - 25 avril 2014 à 17:35
A voir également:
- Android php mysql json
- Android - Guide
- Android recovery - Guide
- Jouer a pokemon sur android - Guide
- Voir mot de passe wifi android - Guide
- Mode sécurisé android - Guide
4 réponses
BunoCS
Messages postés
15496
Date d'inscription
lundi 11 juillet 2005
Statut
Modérateur
Dernière intervention
24 décembre 2024
3 912
25 avril 2014 à 09:34
25 avril 2014 à 09:34
Hello,
Il est où le souci?
Afficher une activity? Passer des paramètres entre activities? Récupérer des données d'un webservice?
Il est où le souci?
Afficher une activity? Passer des paramètres entre activities? Récupérer des données d'un webservice?
wissem81
Messages postés
6
Date d'inscription
jeudi 24 avril 2014
Statut
Membre
Dernière intervention
5 mai 2014
25 avril 2014 à 16:24
25 avril 2014 à 16:24
bonjour
le soucis c'est que rien ne s'affiche sur l'émulateur
la premiere activity est un carrousel des logo des voitures qui défilent
j'ai enregistré les modèles des voitures dans la bdd(avec des identifiants(ex id=0,nom=208),(id=0,nom=207))
et le premier item du carrousel et le logo de peugeot(position =0)
j'ai pensé a ce que la première activity passe la position de l'item comme paramètre a la deuxième activity et le json de cette dernière va l'envoyer au fichier php
voici mon code php:
<?php
// array for JSON response
$response = array();
require_once __DIR__ . '/db_connect.php';
$db = new DB_CONNECT();
if (isset($_GET["id"])) {
//$id = $_GET['id'];
$result = mysql_query("SELECT *FROM modele WHERE id like '".$_GET["id"]."%'");
//$result = mysql_query("SELECT *FROM modele WHERE id =$id");
while($row=mysql_fetch_assoc($result))
$response[]=$row;
?>
et mon code java de la première activity
public void onItemClick(AdapterView<?> arg0, View view, int position, long arg3) {
Log.d(getClass().getName(), "Click " + position);
Intent intent = new Intent(getApplicationContext() , vehicules.class);
intent.putExtra(EXTRA_MESSAGE, position);
startActivityForResult(intent, 100);
}
et celui de la deuxième activity
Intent intent = getIntent();
String pid = intent.getStringExtra(EXTRA_MESSAGE);
List<NameValuePair> params = new ArrayList<NameValuePair>();
params.add(new BasicNameValuePair(TAG_ID, pid));
après json va récupérer l'id et le nom des voitures et doit l'afficher sur l'émulateur
JSONObject json = jParser.makeHttpRequest(url_all_vehicule, "GET", params);
Log.d("Allvehicules: ", json.toString());
try {
int success = json.getInt(TAG_SUCCESS);
if(success==1){
// products found
// Getting Array of Products
vehicules = json.getJSONArray(TAG_MODELE);
for (int i = 0; i < vehicules.length(); i++) {
JSONObject c = vehicules.getJSONObject(i);
String id1 = c.getString(TAG_ID);
String name = c.getString(TAG_NOM);
HashMap<String, String> map = new HashMap<String, String>();
map.put(TAG_ID, id1);
map.put(TAG_NOM, name);
vehiculesList.add(map);
}
}
} catch (JSONException e) {
e.printStackTrace();
}
runOnUiThread(new Runnable() {
public void run() {
/**
* Updating parsed JSON data into ListView
* */
ListAdapter adapter = new SimpleAdapter(
vehicules.this, vehiculesList,
R.layout.list_item, new String[] { TAG_ID,
TAG_NOM },
new int[] { R.id.pid,R.id.name });
// updating listview
setListAdapter(adapter);
}
et merci pour votre aide
le soucis c'est que rien ne s'affiche sur l'émulateur
la premiere activity est un carrousel des logo des voitures qui défilent
j'ai enregistré les modèles des voitures dans la bdd(avec des identifiants(ex id=0,nom=208),(id=0,nom=207))
et le premier item du carrousel et le logo de peugeot(position =0)
j'ai pensé a ce que la première activity passe la position de l'item comme paramètre a la deuxième activity et le json de cette dernière va l'envoyer au fichier php
voici mon code php:
<?php
// array for JSON response
$response = array();
require_once __DIR__ . '/db_connect.php';
$db = new DB_CONNECT();
if (isset($_GET["id"])) {
//$id = $_GET['id'];
$result = mysql_query("SELECT *FROM modele WHERE id like '".$_GET["id"]."%'");
//$result = mysql_query("SELECT *FROM modele WHERE id =$id");
while($row=mysql_fetch_assoc($result))
$response[]=$row;
?>
et mon code java de la première activity
public void onItemClick(AdapterView<?> arg0, View view, int position, long arg3) {
Log.d(getClass().getName(), "Click " + position);
Intent intent = new Intent(getApplicationContext() , vehicules.class);
intent.putExtra(EXTRA_MESSAGE, position);
startActivityForResult(intent, 100);
}
et celui de la deuxième activity
Intent intent = getIntent();
String pid = intent.getStringExtra(EXTRA_MESSAGE);
List<NameValuePair> params = new ArrayList<NameValuePair>();
params.add(new BasicNameValuePair(TAG_ID, pid));
après json va récupérer l'id et le nom des voitures et doit l'afficher sur l'émulateur
JSONObject json = jParser.makeHttpRequest(url_all_vehicule, "GET", params);
Log.d("Allvehicules: ", json.toString());
try {
int success = json.getInt(TAG_SUCCESS);
if(success==1){
// products found
// Getting Array of Products
vehicules = json.getJSONArray(TAG_MODELE);
for (int i = 0; i < vehicules.length(); i++) {
JSONObject c = vehicules.getJSONObject(i);
String id1 = c.getString(TAG_ID);
String name = c.getString(TAG_NOM);
HashMap<String, String> map = new HashMap<String, String>();
map.put(TAG_ID, id1);
map.put(TAG_NOM, name);
vehiculesList.add(map);
}
}
} catch (JSONException e) {
e.printStackTrace();
}
runOnUiThread(new Runnable() {
public void run() {
/**
* Updating parsed JSON data into ListView
* */
ListAdapter adapter = new SimpleAdapter(
vehicules.this, vehiculesList,
R.layout.list_item, new String[] { TAG_ID,
TAG_NOM },
new int[] { R.id.pid,R.id.name });
// updating listview
setListAdapter(adapter);
}
et merci pour votre aide
BunoCS
Messages postés
15496
Date d'inscription
lundi 11 juillet 2005
Statut
Modérateur
Dernière intervention
24 décembre 2024
3 912
25 avril 2014 à 17:02
25 avril 2014 à 17:02
En mode debug, ça donne quoi? Tu as un retour de ton webservice?
Note: attention à bien gérer l'asynchronisme des requêtes. La best practice étant la suivante:
- dans onCreate(), tu récupères les params, tu lances la requête en spécifiant un listener (ou une callback) et tu affiches un loader
- dans ta callback, tu récupères les datas du serveur, tu mets à jour tes données et tu vires ton loader
Note: attention à bien gérer l'asynchronisme des requêtes. La best practice étant la suivante:
- dans onCreate(), tu récupères les params, tu lances la requête en spécifiant un listener (ou une callback) et tu affiches un loader
- dans ta callback, tu récupères les datas du serveur, tu mets à jour tes données et tu vires ton loader
wissem81
Messages postés
6
Date d'inscription
jeudi 24 avril 2014
Statut
Membre
Dernière intervention
5 mai 2014
25 avril 2014 à 17:35
25 avril 2014 à 17:35
j'ai jamais travaillé avec loader mais je vais essayer
merci
merci