Problème exécution de requête Android -> PHP -> MySQL
Bonjour,
Je souhaite insérer un nom et un prénom dans ma base de données MySQL à partir de mon application android et d'un script php mais ma requête ne s'exécute pas. :(
Voici mon script php :
Code:
1 2 3 4 5 6 7 8 9
| <?php
mysql_connect("****","****","****") or die("erreur de connexion au serveur");
mysql_select_db("***");
$sql=mysql_query("INSERT INTO Users (Prénom, Nom) VALUES ('".$_POST['prenom']."','".$_POST['nom']."')");
//while($row=mysql_fetch_assoc($requete))
//$output[]=$row;
//print(json_encode($output));
mysql_close();
?> |
J'ai testé cette requête, elle marche très bien.
Voici le code java de mon application android :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| @Override
public void onClick(View v) {
prenom.setText("ça marche !!");
try {
HttpPost httpPost = new HttpPost("http://www.brieg-web.fr/insert_user.php");
List<NameValuePair> postParameters = new ArrayList<NameValuePair>(2);
//On crée la liste qui contiendra tous nos paramètres
//Et on y rajoute nos paramétres
postParameters.add(new BasicNameValuePair("prenom", "toto"));
postParameters.add(new BasicNameValuePair("nom", "toto"));
httpPost.setEntity(new UrlEncodedFormEntity(postParameters));
HttpClient httpclient = new DefaultHttpClient();
httpclient.execute(httpPost); //Voila, la requête est envoyée
} catch (Exception e) {}
} |
J'ai fais pleins de tests mais je n'arrive pas à voir d'où vient le problème.
Dans LogCat, j'ai ces messages d'erreurs :
Code:
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
| 01-09 17:27:24.450: E/AndroidRuntime(4759): FATAL EXCEPTION: main
01-09 17:27:24.450: E/AndroidRuntime(4759): Process: com.example.whoissam, PID: 4759
01-09 17:27:24.450: E/AndroidRuntime(4759): android.os.NetworkOnMainThreadException
01-09 17:27:24.450: E/AndroidRuntime(4759): at android.os.StrictMode$AndroidBlockGuardPolicy.onNetwork(StrictMode.java:1145)
01-09 17:27:24.450: E/AndroidRuntime(4759): at java.net.InetAddress.lookupHostByName(InetAddress.java:385)
01-09 17:27:24.450: E/AndroidRuntime(4759): at java.net.InetAddress.getAllByNameImpl(InetAddress.java:236)
01-09 17:27:24.450: E/AndroidRuntime(4759): at java.net.InetAddress.getAllByName(InetAddress.java:214)
01-09 17:27:24.450: E/AndroidRuntime(4759): at org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection(DefaultClientConnectionOperator.java:137)
01-09 17:27:24.450: E/AndroidRuntime(4759): at org.apache.http.impl.conn.AbstractPoolEntry.open(AbstractPoolEntry.java:164)
01-09 17:27:24.450: E/AndroidRuntime(4759): at org.apache.http.impl.conn.AbstractPooledConnAdapter.open(AbstractPooledConnAdapter.java:119)
01-09 17:27:24.450: E/AndroidRuntime(4759): at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:360)
01-09 17:27:24.450: E/AndroidRuntime(4759): at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:555)
01-09 17:27:24.450: E/AndroidRuntime(4759): at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:487)
01-09 17:27:24.450: E/AndroidRuntime(4759): at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:465)
01-09 17:27:24.450: E/AndroidRuntime(4759): at com.example.whoissam.MainActivity$1.onClick(MainActivity.java:68)
01-09 17:27:24.450: E/AndroidRuntime(4759): at android.view.View.performClick(View.java:4424)
01-09 17:27:24.450: E/AndroidRuntime(4759): at android.view.View$PerformClick.run(View.java:18383)
01-09 17:27:24.450: E/AndroidRuntime(4759): at android.os.Handler.handleCallback(Handler.java:733)
01-09 17:27:24.450: E/AndroidRuntime(4759): at android.os.Handler.dispatchMessage(Handler.java:95)
01-09 17:27:24.450: E/AndroidRuntime(4759): at android.os.Looper.loop(Looper.java:137)
01-09 17:27:24.450: E/AndroidRuntime(4759): at android.app.ActivityThread.main(ActivityThread.java:4998)
01-09 17:27:24.450: E/AndroidRuntime(4759): at java.lang.reflect.Method.invokeNative(Native Method)
01-09 17:27:24.450: E/AndroidRuntime(4759): at java.lang.reflect.Method.invoke(Method.java:515)
01-09 17:27:24.450: E/AndroidRuntime(4759): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:777)
01-09 17:27:24.450: E/AndroidRuntime(4759): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:593)
01-09 17:27:24.450: E/AndroidRuntime(4759): at dalvik.system.NativeStart.main(Native Method) |
Si quelqu'un sait d'où vient mon problème ?
Merci d'avance. :D