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

Android Discussion :

Mon téléphone ne se connecte pas à la base de données


Sujet :

Android

  1. #1
    Nouveau membre du Club
    Femme Profil pro
    Chercheur en informatique
    Inscrit en
    Janvier 2017
    Messages
    31
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Chercheur en informatique

    Informations forums :
    Inscription : Janvier 2017
    Messages : 31
    Points : 35
    Points
    35
    Par défaut Mon téléphone ne se connecte pas à la base de données
    Bonjour,

    Je suis en train de développer une application Android et je test mon code directement sur mon téléphone physique (pas sur l'émulateur), mais voilà mon problème est que je n'arrive pas à partager ma base de données qui est sur mon PC avec mon smartphone, je n'arrive même pas à accéder à ma page php via mon navigateur, quand je tape l'URL : 127.0.0.1/login.php ou localhost/login.php tout va bien, mais si je tape 192.168.X.X/login.php j’obtiens cette erreur : You don't have permission to access /login.php on this server. J'ai fait quelques recherches et ils disent qu'il faut modifier le fichier phpmyadmin.conf du serveur Appach et c'est ce que j'ai fait j'ai rajouté cette autorisation : Allow from 192.168.X.X et j'ai rajouté une règle dans mon parefeu pour permettre les connecxions via le port 80, mais le problème persiste toujours et je ne sais plus quoi faire. S'il vous plaît aidez-moi à régler ce problème c'est très urgent, je ne sais plus quoi faire, je suis désespéré :arf .

    Merci à vous.

  2. #2
    Membre actif Avatar de jmonga
    Homme Profil pro
    Développeur Java
    Inscrit en
    Novembre 2014
    Messages
    175
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : Congo-Kinshasa

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2014
    Messages : 175
    Points : 269
    Points
    269
    Par défaut
    Utilise plutôt un émulateur à la place
    Jonathan Monga

  3. #3
    Nouveau membre du Club
    Femme Profil pro
    Chercheur en informatique
    Inscrit en
    Janvier 2017
    Messages
    31
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Chercheur en informatique

    Informations forums :
    Inscription : Janvier 2017
    Messages : 31
    Points : 35
    Points
    35
    Par défaut
    Merci jmonga pour votre réponse, mais pour mon cas c'est plus intéressant d'utiliser le téléphone pour les tests car le but de mon application est de récupérer les données des capteurs accéléromètre et du gyroscope donc avec l'émulateur ce n'est pas possible.

  4. #4
    Membre actif Avatar de jmonga
    Homme Profil pro
    Développeur Java
    Inscrit en
    Novembre 2014
    Messages
    175
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : Congo-Kinshasa

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2014
    Messages : 175
    Points : 269
    Points
    269
    Par défaut
    Oui pour tester ta base.
    Jonathan Monga

  5. #5
    Modérateur
    Avatar de MasterMbg
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2011
    Messages
    719
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Congo-Kinshasa

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2011
    Messages : 719
    Points : 1 493
    Points
    1 493
    Par défaut
    Salut,

    Citation Envoyé par Lotus14 Voir le message
    mais voilà mon problème est que je n'arrive pas à partager ma base de données qui est sur mon PC avec mon smartphone
    Que veux tu dire pas là? Tu as une base de données sur ton pc et tu veux y accéder depuis ton application sur smartphone exact?

    Christian Djo,
    Plus tu apprends sérieusement, plus tu te rapproches d'un savoir noble. Une chose est certaine, les difficultés ne s'écarteront de ton chemin...

    Tu es nouveau dans le développement Android, la page des COURS est là pour te faciliter la vie
    Tu peux trouver la réponse à ta question dans la FAQ
    Retrouvez mon tutoriel sur la consommation des services web SOAP
    Pense à voter positivement en appuyant sur en bas à droite de la réponse qui t'a donné une piste de solution.

  6. #6
    Nouveau membre du Club
    Femme Profil pro
    Chercheur en informatique
    Inscrit en
    Janvier 2017
    Messages
    31
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Chercheur en informatique

    Informations forums :
    Inscription : Janvier 2017
    Messages : 31
    Points : 35
    Points
    35
    Par défaut
    Salut,

    Oui, mon application consiste à récupérer les données de l'accéléromètre et du gyroscope et d'enregistrer ces données dans une base de données donc je veux envoyer des données de mon téléphone vers ma base de données (qui est sur mon PC).

  7. #7
    Modérateur
    Avatar de MasterMbg
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2011
    Messages
    719
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Congo-Kinshasa

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2011
    Messages : 719
    Points : 1 493
    Points
    1 493
    Par défaut
    Citation Envoyé par Lotus14 Voir le message
    Salut,

    Oui, mon application consiste à récupérer les données de l'accéléromètre et du gyroscope et d'enregistrer ces données dans une base de données donc je veux envoyer des données de mon téléphone vers ma base de données (qui est sur mon PC).
    C'est plus clair maintenant .

    Tu dois d'abord créer la base de données ci ce n'est encore fait. Ensuite tu crées un service web REST ou SOAP qui te permettra d'accéder à la base de données depuis ton smartphone.


    Christian Djo,
    Plus tu apprends sérieusement, plus tu te rapproches d'un savoir noble. Une chose est certaine, les difficultés ne s'écarteront de ton chemin...

    Tu es nouveau dans le développement Android, la page des COURS est là pour te faciliter la vie
    Tu peux trouver la réponse à ta question dans la FAQ
    Retrouvez mon tutoriel sur la consommation des services web SOAP
    Pense à voter positivement en appuyant sur en bas à droite de la réponse qui t'a donné une piste de solution.

  8. #8
    Nouveau membre du Club
    Femme Profil pro
    Chercheur en informatique
    Inscrit en
    Janvier 2017
    Messages
    31
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Chercheur en informatique

    Informations forums :
    Inscription : Janvier 2017
    Messages : 31
    Points : 35
    Points
    35
    Par défaut
    Oui c'est ce que j'ai fait j'ai utilisé REST mais j'ai toujours ce problème.

  9. #9
    Membre actif Avatar de jmonga
    Homme Profil pro
    Développeur Java
    Inscrit en
    Novembre 2014
    Messages
    175
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : Congo-Kinshasa

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2014
    Messages : 175
    Points : 269
    Points
    269
    Par défaut
    Utilise d'abord une base Sur ton téléphone.

    Une question tu peux reçevoir tes données du téléphone?
    Jonathan Monga

  10. #10
    Modérateur
    Avatar de MasterMbg
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2011
    Messages
    719
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Congo-Kinshasa

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2011
    Messages : 719
    Points : 1 493
    Points
    1 493
    Par défaut
    Citation Envoyé par Lotus14 Voir le message
    Oui c'est ce que j'ai fait j'ai utilisé REST mais j'ai toujours ce problème.
    Peut-on voir l'implémentation de ton REST Web service?
    Plus tu apprends sérieusement, plus tu te rapproches d'un savoir noble. Une chose est certaine, les difficultés ne s'écarteront de ton chemin...

    Tu es nouveau dans le développement Android, la page des COURS est là pour te faciliter la vie
    Tu peux trouver la réponse à ta question dans la FAQ
    Retrouvez mon tutoriel sur la consommation des services web SOAP
    Pense à voter positivement en appuyant sur en bas à droite de la réponse qui t'a donné une piste de solution.

  11. #11
    Nouveau membre du Club
    Femme Profil pro
    Chercheur en informatique
    Inscrit en
    Janvier 2017
    Messages
    31
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Chercheur en informatique

    Informations forums :
    Inscription : Janvier 2017
    Messages : 31
    Points : 35
    Points
    35
    Par défaut
    Voilà mon code (que j'ai trouvé dans un tuto)

    la class AsyncTask :

    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
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
     
     
    public class BackgroundWorker extends AsyncTask<String, Void, String>{
        Context context;
        AlertDialog alertDialog;
        BackgroundWorker (Context ctx){
            context = ctx;
        }
     
        @Override
        protected String doInBackground(String... params) {
            String type = params[0];
            String user_name = params[1];
            String password = params[2];
            String login_url = "http://192.168.X.X/login.php";
            if(type.equals("login")){
                try {
                    URL url = new URL(login_url);
                    HttpURLConnection httpURLConnection = (HttpURLConnection) url.openConnection();
                    httpURLConnection.setDoOutput(true);
                    httpURLConnection.setDoInput(true);
                    OutputStream outputStream = httpURLConnection.getOutputStream();
                    BufferedWriter bufferedWriter = new BufferedWriter(new OutputStreamWriter(outputStream, "UTF-8"));
                    String post_data = URLEncoder.encode("user_name","UTF-8")+"="+URLEncoder.encode(user_name,"UTF-8")+"&"
                            +URLEncoder.encode("password","UTF-8")+"="+URLEncoder.encode(password,"UTF-8");
                    bufferedWriter.write(post_data);
                    bufferedWriter.flush();
                    bufferedWriter.close();
                    outputStream.close();
                    //*******la réponse du serveur***********************
     
                    InputStream inputStream = httpURLConnection.getInputStream();
                    BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(inputStream, "iso-8859-1"));
                    String result="";
                    String line="";
                 while((line = bufferedReader.readLine()) != null){
                         result += line;
                 }
                      bufferedReader.close();
                      inputStream.close();
                    return result;
     
                } catch (MalformedURLException e) {
                    e.printStackTrace();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
            return  null;
        }
     
        @Override
        protected  void onPreExecute(){
            alertDialog = new AlertDialog.Builder(context).create();
            alertDialog.setTitle("Login status");
        }
     
     
        @Override
        protected  void onPostExecute(String result){
     
            alertDialog.setMessage(result);
            alertDialog.show();
     
        }
     
        @Override
        protected void onProgressUpdate(Void... values){
            super.onProgressUpdate(values);
        }
     
    }
    et voici ma class Activity

    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
     
     
    public class MainActivity extends Activity {
        EditText UsernameET, PasswordEt;
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
            UsernameET = (EditText) findViewById(R.id.etusername); //***********************
            PasswordEt = (EditText) findViewById(R.id.etPassword);//*******************
     
     
        }
     
        public void onLogin(View v){
            String username = UsernameET.getText().toString();
            String password = PasswordEt.getText().toString();
            String type = "login";
            BackgroundWorker backgroundWorker = new BackgroundWorker(this);
            backgroundWorker.execute(type, username, password);
     
        }
    }
    J'ai rajouté la permission dans le Manifest <uses-permission android:name="android.permission.INTERNET"/> pour la connexion à internet et j'ai vérifié que mon téléphone est connecté et quand j'exécute rien ne se passe pas d'erreur et le alertDialog ne s'affiche même pas.

  12. #12
    Nouveau membre du Club
    Femme Profil pro
    Chercheur en informatique
    Inscrit en
    Janvier 2017
    Messages
    31
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Chercheur en informatique

    Informations forums :
    Inscription : Janvier 2017
    Messages : 31
    Points : 35
    Points
    35
    Par défaut
    Voilà l'erreur qu'il me retourne mais je ne sais pas pourquoi il prend beaucoup de temps pour afficher cette erreur !

    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
     
    W/System.err: java.net.ConnectException: failed to connect to /192.168.X.X (port 80): connect failed: ETIMEDOUT (Connection timed out)
    W/System.err:     at libcore.io.IoBridge.connect(IoBridge.java:118)
    W/System.err:     at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:192)
    W/System.err:     at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:459)
    W/System.err:     at java.net.Socket.connect(Socket.java:847)
    W/System.err:     at libcore.net.http.HttpConnection.<init>(HttpConnection.java:76)
    W/System.err:     at libcore.net.http.HttpConnection.<init>(HttpConnection.java:50)
    W/System.err:     at libcore.net.http.HttpConnection$Address.connect(HttpConnection.java:341)
    W/System.err:     at libcore.net.http.HttpConnectionPool.get(HttpConnectionPool.java:87)
    W/System.err:     at libcore.net.http.HttpConnection.connect(HttpConnection.java:128)
    W/System.err:     at libcore.net.http.HttpEngine.openSocketConnection(HttpEngine.java:315)
    W/System.err:     at libcore.net.http.HttpEngine.connect(HttpEngine.java:310)
    W/System.err:     at libcore.net.http.HttpEngine.sendSocketRequest(HttpEngine.java:289)
    W/System.err:     at libcore.net.http.HttpEngine.sendRequest(HttpEngine.java:239)
    W/System.err:     at libcore.net.http.HttpURLConnectionImpl.connect(HttpURLConnectionImpl.java:80)
    W/System.err:     at libcore.net.http.HttpURLConnectionImpl.getOutputStream(HttpURLConnectionImpl.java:188)
    W/System.err:     at com.example.fer.testbdd.BackgroundWorker.doInBackground(BackgroundWorker.java:39)
    W/System.err:     at com.example.fer.testbdd.BackgroundWorker.doInBackground(BackgroundWorker.java:20)
    W/System.err:     at android.os.AsyncTask$2.call(AsyncTask.java:287)
    W/System.err:     at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:305)
    W/System.err:     at java.util.concurrent.FutureTask.run(FutureTask.java:137)
    W/System.err:     at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:230)
    W/System.err:     at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1076)
    W/System.err:     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:569)
    W/System.err:     at java.lang.Thread.run(Thread.java:856)
    W/System.err: Caused by: libcore.io.ErrnoException: connect failed: ETIMEDOUT (Connection timed out)
    W/System.err:     at libcore.io.Posix.connect(Native Method)
    W/System.err:     at libcore.io.BlockGuardOs.connect(BlockGuardOs.java:85)
    W/System.err:     at libcore.io.IoBridge.connectErrno(IoBridge.java:131)
    W/System.err:     at libcore.io.IoBridge.connect(IoBridge.java:116)
    W/System.err: 	... 23 more

  13. #13
    Modérateur
    Avatar de MasterMbg
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2011
    Messages
    719
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Congo-Kinshasa

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2011
    Messages : 719
    Points : 1 493
    Points
    1 493
    Par défaut
    Salut,

    Ton téléphone ainsi que ton ordinateur doivent être dans un même réseau. Si tu testes en local (chez toi), je te conseille de créer un réseau local et de connecter ton ordi ainsi que ton téléphone à ce réseau. Si tu ne le fais pas, même si tu connectes ton téléphone à l'internet vu que le serveur (ton ordi sur lequel est hébergé ton service web) n'est accessible depuis l'extérieur (car non connecté à un réseau plus étendu), ce dernier ne saura accéder au serveur.


    Christian Djo,
    Plus tu apprends sérieusement, plus tu te rapproches d'un savoir noble. Une chose est certaine, les difficultés ne s'écarteront de ton chemin...

    Tu es nouveau dans le développement Android, la page des COURS est là pour te faciliter la vie
    Tu peux trouver la réponse à ta question dans la FAQ
    Retrouvez mon tutoriel sur la consommation des services web SOAP
    Pense à voter positivement en appuyant sur en bas à droite de la réponse qui t'a donné une piste de solution.

  14. #14
    Nouveau membre du Club
    Femme Profil pro
    Chercheur en informatique
    Inscrit en
    Janvier 2017
    Messages
    31
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Chercheur en informatique

    Informations forums :
    Inscription : Janvier 2017
    Messages : 31
    Points : 35
    Points
    35
    Par défaut
    Enfin j'ai réglé le problème, j'ai rajouté mon adresse IP dans le fichier httppd.conf pour lui donner le droit d’accès à Appach. Je vous remercie tous pour vos réponses et pour l’intérêt que vous avez montré. Merci.

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

Discussions similaires

  1. mon site ne se connecte pas à ma base
    Par klaskerchans dans le forum Administration
    Réponses: 13
    Dernier message: 03/12/2013, 11h59
  2. Mon programme JAVA n'arrive pas à se connecter a une base de données ORACLE
    Par yimson dans le forum Connexions aux bases de données
    Réponses: 10
    Dernier message: 13/10/2011, 15h52
  3. Réponses: 7
    Dernier message: 14/10/2008, 09h34
  4. mon site ne se connecte pas a la BD
    Par usama2 dans le forum 1&1
    Réponses: 8
    Dernier message: 22/09/2008, 22h35
  5. RMAN ne se connecte pas à la base cible fermée
    Par big1 dans le forum Recovery Manager
    Réponses: 2
    Dernier message: 19/02/2007, 12h14

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