Insérer des données MySQL à partir d'Android
Bonjour, je suis en train de faire une application android :
J'utilise une base de donnée distante mysql!! je veux lorsque l'étudiant rempli un formulaire les donnée seront enregistré automatiquement dans ma base de données
Voici le code php
Code:
1 2 3 4 5 6 7 8 9 10 11
| <?php
mysql_connect("localhost","root","") or die(mysql_error());
mysql_select_db("ecole");
$nom = $_POST['nom'];
$prenom = $_POST['prenom'] ;
$cne = $_POST['cne'] ;
$query_add="INSERT INTO authentification ('nom' ,'prenom','cne' )
VALUES ('$nom','$prenom','$cne')";
$query_exec=mysql_query($query_add) or die(mysql_error());
mysql_close()
?> |
voici mon code en android
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 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
| package com.example.authentification;
import java.util.ArrayList;
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.apache.http.message.BasicNameValuePair;
import android.app.Activity;
import android.app.ProgressDialog;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
public class MainActivity1 extends Activity {
EditText cne;
EditText nom;
EditText prenom;
Button ok ;
HttpPost httppost;
StringBuffer buffer;
HttpClient httpclient;
HttpResponse response;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.cp1);
cne = (EditText) findViewById(R.id.cne) ;
nom = (EditText) findViewById(R.id.nom) ;
prenom = (EditText) findViewById(R.id.prenom) ;
ok = (Button) findViewById(R.id.ok) ;
ok.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
httpclient = new DefaultHttpClient();
httppost = new HttpPost("http://105.132.31.2:81/authen/inserer.php");
ArrayList<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(3);
nameValuePairs.add(new BasicNameValuePair("nom",nom.getText().toString().trim()));
nameValuePairs.add(new BasicNameValuePair("prenom",prenom.getText().toString().trim()));
nameValuePairs.add(new BasicNameValuePair("cne",cne.getText().toString().trim()));
httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
response = httpclient.execute(httppost);
Log.i("postData", response.getStatusLine().toString());
} catch(Exception e) {
Log.e("log_tag", "Error: "+e.toString());
}
}
}
} |
Le message d'erreur : connexion au 105.132.31.5.2
J'ai ajouté dans le manifest
Code:
1 2 3 4 5 6 7 8 9 10
| <uses-permission android:name="android.permission.INTERNET"/>
<permission android:name="com.example.authentification.permission.MAPSRECEIVE"></permission>
<uses-permission android:name="permission_name"/>
<uses-permission android:name="com.example.authentification.permission.MAPSRECEIVE"/>
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES"/>
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/> |