l'aide de PHP
Imprimer
Grâce à ce tutoriel, vous connecterez facilement vos applications Android à un site Internet utilisant
PHP et MySQL.
1. Les technologies
JSON (JavaScript Object Notation)
Format de données textuel, générique, dérivé de la notation des objets du langage
ECMAScript.
MySQL
Système de gestion de base de données (SGBD).
PHP
Langage de scripts libre principalement utilisé pour produire des pages Web dynamiques.
Android
Système d'exploitation open source pour smartphones, PDA et terminaux mobiles.
2. Introduction
La méthode la plus répandue de se connecter à une base de données MySQL à distance à partir d'un
appareil Android, est d'utiliser un service.
MySQL est habituellement utilisé avec PHP, donc le moyen le plus simple et le plus évident est
d'écrire un script PHP
Dans ce tutoriel, je vais vous montrer comment utiliser PHP et la base de données MySQL pour
récupérer des informations depuis le serveur.
Pour faire des connexions avec le script PHP, nous allons utiliser le protocole HTTP du
système Android.
Si nous parlons de l'architecture client-serveur, le client est l'appareil Android et le serveur est le
couplePHP/MySQL.
Exemple :
Format JSON :
{"menu": {
"id": "file",
"value": "File",
"popup": {
"menuitem": [
}}
<popup>
</popup>
</menu>
Nom_ville VARCHAR(100),
);
Nous voulons récupérer le nom de la ville de notre table tblVille qui commence par L.
mysql_connect("localhost","root","password");
mysql_select_db("bdVille");
while($row=mysql_fetch_assoc($sql))
$output[]=$row;
print(json_encode($output));
mysql_close();
?>
L'ensemble du code de récupération des données du serveur de notre application Android est indiqué
ci-dessous :
import java.io.BufferedReader;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.util.ArrayList;
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.apache.http.message.BasicNameValuePair;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
import android.app.Activity;
import android.os.Bundle;
import android.util.Log;
import android.widget.LinearLayout;
import android.widget.TextView;
TextView txt;
@Override
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
rootLayout.addView(txt);
setContentView(rootLayout);
txt.setText("Connexion...");
txt.setText(getServerData(strURL));
InputStream is = null;
nameValuePairs.add(new BasicNameValuePair("ville","L"));
try{
httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
is = entity.getContent();
}catch(Exception e){
try{
sb.append(line + "\n");
is.close();
result=sb.toString();
}catch(Exception e){
try{
for(int i=0;i<jArray.length();i++){
Log.i("log_tag","ID_ville: "+json_data.getInt("ID_ville")+
);
// Résultats de la requête
}catch(JSONException e){
return returnString;
6. Captures d'écran