BDD avec Android

cs_Amor90 Messages postés 3 Date d'inscription samedi 26 novembre 2011 Statut Membre Dernière intervention 2 mars 2012 - 1 mars 2012 à 23:54
 Utilisateur anonyme - 9 avril 2012 à 23:45
Salut,

J'ai un problème de la façon que je ne peux pas insérer des données dons un BDD (c.à.d. comment récupère les variable dans Easy Php) avec Androïde (sachons que j’utilise Easy PHP comme serveur).je se retrouver avec ce problème depuis quelques jours.
S'il vous plaît me trouver une solution.

Merci d'avance,

5 réponses

cs_Julien39 Messages postés 6414 Date d'inscription mardi 8 mars 2005 Statut Modérateur Dernière intervention 29 juillet 2020 371
2 mars 2012 à 08:25
Bonjour,

Peux tu préciser ?

Quel est ton problème ? La connexion à la base ? Les requêtes ? Tu peux nous afficher la trace de ton erreur ?
0
Utilisateur anonyme
2 mars 2012 à 12:34
Déjà je ne vois pas le rapport entre Androïd et EasyPHP O_ô
Ensuite, tu cherches à faire quoi exactement ?


--
Pylouq
(Lire le Réglement n'a jamais tué personne, au pire ça les a instruit)
0
cs_Julien39 Messages postés 6414 Date d'inscription mardi 8 mars 2005 Statut Modérateur Dernière intervention 29 juillet 2020 371
2 mars 2012 à 13:22
Il n'y a pas de rapport direct, mais il peut gérer sa base de données avec easyPhp et accéder à cette base depuis une application pour Android
0
cs_Amor90 Messages postés 3 Date d'inscription samedi 26 novembre 2011 Statut Membre Dernière intervention 2 mars 2012
2 mars 2012 à 13:36
Bonjour,
mon problème est La requêtes,et l’envoi des donnée ou EasyPhp.
et voila le code d'envoi:
package edu.formation.getpostdata;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.MalformedURLException;
import java.net.URI;
import java.net.URISyntaxException;
import java.net.URL;
import java.net.URLConnection;
import java.util.ArrayList;
import java.util.List;

import org.apache.http.HttpResponse;
import org.apache.http.NameValuePair;
import org.apache.http.client.ClientProtocolException;
import org.apache.http.client.entity.UrlEncodedFormEntity;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.message.BasicNameValuePair;
import org.apache.http.protocol.HTTP;

import android.app.Activity;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.CheckBox;
import android.widget.CompoundButton;
import android.widget.CompoundButton.OnCheckedChangeListener;
import android.widget.EditText;
import android.widget.LinearLayout;
import android.widget.TextView;
import android.widget.Toast;

public class Main extends Activity implements OnCheckedChangeListener,
OnClickListener {
EditText url;
CheckBox cb1;
LinearLayout ll1;
EditText nom;
EditText valeur;
Button addparam;
Button getpost;
TextView result;
List<NameValuePair> nvps;

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
url = (EditText) this.findViewById(R.id.editText1);
cb1 = (CheckBox) this.findViewById(R.id.checkBox1);
cb1.setOnCheckedChangeListener(this);
ll1 = (LinearLayout) this.findViewById(R.id.linearLayout1);
nom = (EditText) this.findViewById(R.id.editText3);
valeur = (EditText) this.findViewById(R.id.editText2);
addparam = (Button) this.findViewById(R.id.button1);
addparam.setOnClickListener(this);
getpost = (Button) this.findViewById(R.id.button2);
getpost.setOnClickListener(this);
result = (TextView) this.findViewById(R.id.textView1);
nvps = new ArrayList<NameValuePair>();
//nvps.add(new BasicNameValuePair("nom", "Jabeur"));
}

// Methode GetPostData
public String GetHTML(String url, List<NameValuePair> _nvps) {

DefaultHttpClient httpClient = new DefaultHttpClient();
try {
HttpResponse res;
URI uri = new URI(url);
//if (_nvps != null) {

HttpPost methodpost = new HttpPost(uri);
methodpost.addHeader("pragma", "no-cache");
methodpost.setEntity(new UrlEncodedFormEntity(_nvps));
res = httpClient.execute(methodpost);
/* } else {
HttpGet methodget = new HttpGet(uri);
methodget.addHeader("pragma", "no-cache");
res = httpClient.execute(methodget);
}*/
InputStream data = res.getEntity().getContent();

return generateString(data);

} catch (URISyntaxException e) {
e.printStackTrace();
} catch (ClientProtocolException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return "";
}

// Converter Converter
static public String generateString(InputStream stream) {
InputStreamReader reader = new InputStreamReader(stream);
BufferedReader buffer = new BufferedReader(reader);
StringBuilder sb = new StringBuilder();
try {
String cur;
while ((cur = buffer.readLine()) != null) {
sb.append(cur).append("\n");
}
} catch (IOException e) {
e.printStackTrace();
}
try {
stream.close();
} catch (IOException e) {
e.printStackTrace();
}
return sb.toString();
}

/*static public Boolean verifURL(String _url) {
try {
URL url = new URL(_url);
URLConnection conn = url.openConnection();
conn.connect();
} catch (MalformedURLException e) {
// the URL is not in a valid form
return false;
} catch (IOException e) {
// the connection couldn't be established
return false;
}
return true;
}*/

public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
if (isChecked) {
ll1.setVisibility(View.VISIBLE);
} else {
ll1.setVisibility(View.GONE);
}
}

public void onClick(View arg0) {
switch (arg0.getId()) {
case R.id.button1:
nvps.add(new BasicNameValuePair(nom.getText().toString(), valeur
.getText().toString()));
Log.i("nom", nom.getText().toString());
break;
case R.id.button2:

if (cb1.isChecked()) {
nvps = new ArrayList<NameValuePair>();

Toast.makeText(this,GetHTML("http://10.0.2.2:8080/o.php",nvps), Toast.LENGTH_LONG).show();
/* if (verifURL(url.getText().toString())) {
result.setText(GetHTML(url.getText().toString(), nvps));
} else {
url.setError("URL invalid!");
}*/

}
break;

default:
break;
}
}
}
et voila le code de PHP :
<?php
$nom=$_POST['nom'];
$host="localhost";
$user="root";
$pwd="";
$db="user";

$conn=mysql_connect($host,$user, $pwd) or die(mysql_error());
mysql_select_db($db) or die(mysql_error());

$query="INSERT INTO nom (id,nom)
VALUES ('null','$nom')";

{
$result=mysql_query($query);

echo json_encode ("$query"); }
mysql_close($conn);
?>
*et le EasyPHP m'affiche:
Notice: Undefined index: nom in C:\Program Files\EasyPHP-5.4.0RC4\www\o.php on line 2
"INSERT INTO nom (id,nom)\r\nVALUES ('null','')"
merci
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Utilisateur anonyme
9 avril 2012 à 23:45
Erf stp utilise les balises dédiées à l'affichage propre du code ! Car là ça ne donne pas envie de le lire...
Et à vue de nez, ta variable super-globale $_POST ne contient pas l'entrée "nom", donc c'est pour ça que tu te prends cette erreur.

--
Pylouq
(Lire le Réglement n'a jamais tué personne, au pire ça a instruit des gens.)
0
Rejoignez-nous