IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

API standards et tierces Android Discussion :

Connexion base de données distante


Sujet :

API standards et tierces Android

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Chercheur en informatique
    Inscrit en
    Mai 2011
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Chercheur en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Mai 2011
    Messages : 3
    Par défaut Connexion base de données distante
    Bonjour,
    Je suis encore débutant en Android, pour un petit projet que je réalise pour mon master, j'ai besoin d'effectuer une connexion à une base de données distante.
    Coté serveur j'ai utilise une base de données My sql qui tourne sous un serveur WAMP 2.0 et pour les opérations j'ai réaliser qulques scripts en PHP que j'appel à l'aide de liens.
    Bref mon problème c'est que j'ai consulter plusieurs sujets dans le forum, j'ai fait exactement la méme chose mais je récupère rien, il faut signaler aussi que lors ce que je teste mon code sur JAVA uniquement ça marche très bien mais sur Android, il m'affiche rien !!
    Voici mon code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
     
    public class Main extends Activity implements OnClickListener  {
     
    	Button button;
    	String data="";
    	TextView text;
     
    	@Override
            public void onCreate(Bundle savedInstanceState) {
                super.onCreate(savedInstanceState);
                setContentView(R.layout.main);
                button=((Button)this.findViewById(R.id.button1));
                text = ((TextView)this.findViewById(R.id.textView1));
                button.setOnClickListener(this);
                if(this.getIntent().getExtras()!=null){
                     String s=this.getIntent().getExtras().getString("Data");
                     text.setText(s); }
              }
    	@Override
    	public void onClick(View v) {
    		if(v.getId()==R.id.button1){
    		try {
    			String myurl="http://localhost/php/Andr.php?var=bk";
    	    	URL url;
    		url = new URL(myurl);
    	    	HttpURLConnection connection = (HttpURLConnection)url.openConnection();
    	    	connection.connect();
    	    	connection.getInputStream();
    	    	BufferedReader in = new BufferedReader(new InputStreamReader(connection.getInputStream()));
    	    	data = in.readLine().toString();
    	    	Intent intent= new Intent(this,Main.class);
    	        intent.putExtra("Data", data);
    	        this.startActivityForResult(intent, 1000);
    		} catch (MalformedURLException e) {
    			// TODO Auto-generated catch block
     
    			e.printStackTrace();
    		} catch (IOException e) {
    			// TODO Auto-generated catch block
    			e.printStackTrace();
    		}
    	    }
    	}		
    }

  2. #2
    Membre confirmé
    Inscrit en
    Mai 2003
    Messages
    115
    Détails du profil
    Informations forums :
    Inscription : Mai 2003
    Messages : 115
    Par défaut
    Salut
    Si tu fais un ligne 31
    est ce que le data est dans le logcat ?

    Et aussi quand tu es sous l'emulator Android le LocalHost c'est (moi je cré une constante ca fait plus propre et c'est plus rapide a changer)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    public static final String LOCALHOST = "10.0.2.2"

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Chercheur en informatique
    Inscrit en
    Mai 2011
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Chercheur en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Mai 2011
    Messages : 3
    Par défaut
    désolé j'ai mal compris ta proposition en fait il n'affiche rien voici ce que m'affiche le logcat lors ce que j'appui sur le bouton

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
     
    04-30 23:28:51.810: WARN/System.err(1303): java.net.SocketException: Permission denied
    04-30 23:28:51.841: WARN/System.err(1303):     at org.apache.harmony.luni.platform.OSNetworkSystem.createStreamSocketImpl(Native Method)
    04-30 23:28:51.841: WARN/System.err(1303):     at org.apache.harmony.luni.platform.OSNetworkSystem.createStreamSocket(OSNetworkSystem.java:186)
    04-30 23:28:51.861: WARN/System.err(1303):     at org.apache.harmony.luni.net.PlainSocketImpl.create(PlainSocketImpl.java:265)
    04-30 23:28:51.861: WARN/System.err(1303):     at java.net.Socket.checkClosedAndCreate(Socket.java:873)
    04-30 23:28:51.883: WARN/System.err(1303):     at java.net.Socket.connect(Socket.java:1020)
    04-30 23:28:51.883: WARN/System.err(1303):     at org.apache.harmony.luni.internal.net.www.protocol.http.HttpConnection.<init>(HttpConnection.java:62)
    04-30 23:28:51.911: WARN/System.err(1303):     at org.apache.harmony.luni.internal.net.www.protocol.http.HttpConnectionPool.get(HttpConnectionPool.java:88)
    04-30 23:28:51.911: WARN/System.err(1303):     at org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnectionImpl.getHTTPConnection(HttpURLConnectionImpl.java:927)
    04-30 23:28:51.911: WARN/System.err(1303):     at org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnectionImpl.connect(HttpURLConnectionImpl.java:909)
    04-30 23:28:51.931: WARN/System.err(1303):     at org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnectionImpl.getInputStream(HttpURLConnectionImpl.java:1152)
    04-30 23:28:51.931: WARN/System.err(1303):     at com.test.Main.onClick(Main.java:56)
    04-30 23:28:51.931: WARN/System.err(1303):     at android.view.View.performClick(View.java:2408)
    04-30 23:28:51.931: WARN/System.err(1303):     at android.view.View$PerformClick.run(View.java:8816)
    04-30 23:28:51.941: WARN/System.err(1303):     at android.os.Handler.handleCallback(Handler.java:587)
    04-30 23:28:51.941: WARN/System.err(1303):     at android.os.Handler.dispatchMessage(Handler.java:92)
    04-30 23:28:51.941: WARN/System.err(1303):     at android.os.Looper.loop(Looper.java:123)
    04-30 23:28:51.970: WARN/System.err(1303):     at android.app.ActivityThread.main(ActivityThread.java:4627)
    04-30 23:28:51.970: WARN/System.err(1303):     at java.lang.reflect.Method.invokeNative(Native Method)
    04-30 23:28:51.970: WARN/System.err(1303):     at java.lang.reflect.Method.invoke(Method.java:521)
    04-30 23:28:51.970: WARN/System.err(1303):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
    04-30 23:28:51.970: WARN/System.err(1303):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
    04-30 23:28:51.970: WARN/System.err(1303):     at dalvik.system.NativeStart.main(Native Method)
    La ligne 56 c'est celle-ci
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    BufferedReader in = new BufferedReader(new InputStreamReader(connection.getInputStream()));

  4. #4
    Membre confirmé
    Inscrit en
    Mai 2003
    Messages
    115
    Détails du profil
    Informations forums :
    Inscription : Mai 2003
    Messages : 115
    Par défaut
    as tu ajouté la permission a ton app d'accéder a internet ?
    Si tu l'a pas fais il faut ajouter dans le AndroidManifest.xml

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <uses-permission android:name="android.permission.INTERNET" />
    t'a un exemple ici pour voir ou il faut le placer

    Ensuite ce que je voulais dire c'est que ton server est local. Et que si tu veux y accéder par l'emulateur alors tu dois changer ton adresse
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    String myurl="http://localhost/php/Andr.php?var=bk";
    par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    String myurl="http://10.0.2.2/php/Andr.php?var=bk";
    Enfin je voulais juste savoir si tu accédais au données en ajoutant ce code a la ligne 31 (du code que t'as posté ici dans ce post)
    donc
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    data = in.readLine().toString();
    Log.d("data", data);
    Intent intent= new Intent(this,Main.class);
    intent.putExtra("Data", data);
    this.startActivityForResult(intent, 1000);

  5. #5
    Futur Membre du Club
    Homme Profil pro
    Chercheur en informatique
    Inscrit en
    Mai 2011
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Chercheur en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Mai 2011
    Messages : 3
    Par défaut
    Merci JediMaster
    Ce sont ces deux paramétres qui me manquaient, ça marche très bien maintenant

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. connexion à base de données distante
    Par noussa2011 dans le forum Windows Phone
    Réponses: 3
    Dernier message: 15/03/2012, 09h47
  2. [WD16] Question connexion base de données distante
    Par forca dans le forum WinDev
    Réponses: 21
    Dernier message: 31/10/2011, 15h37
  3. [VB6]connexion à une base de données distant via ADO
    Par alaminabil1 dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 03/02/2006, 12h11
  4. Delphi Connexion à une base de donnée distante par TCP/IP
    Par viecel dans le forum Bases de données
    Réponses: 1
    Dernier message: 12/01/2005, 19h19
  5. connexion a une base de donnée distante mysql(site internet)
    Par rollernox dans le forum Bases de données
    Réponses: 2
    Dernier message: 06/07/2004, 13h14

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo