Bonjour !
C’est après plusieurs heures de recherches et de manipulation que je viens demander votre aide. Je sens que j’approche du but, mais il y a toujours ce petit quelque chose qui m’échappe et que je n’arrive pas à résoudre.
Voici mon problème:
Dans le cadre de mes études, on (deux autres personnes et moi) avons pour projet de réaliser une application mobile sous Android pouvant se connecter à une base de données MySQL à distance. Faute de moyen, nous ne pouvons pas nous payer l’hébergement d’une base de données accessible autrement que via le site (comme le propose les sites gratuits).
Je me suis donc lancé dans la création d’un serveur maison avec un PC portable que j’ai sous la main. Après plusieurs recherches et de multiples manipulations, voici où j’en suis:
-J’ai un PC portable me servant de serveur et ayant comme adresse locale 192.168.0.12, accessible depuis Internet sur le port 80 (j’ai fait les redirections sur le routeur de la Freebox et ça fonctionne, je peux accéder à phpmyadmin depuis mon téléphone en 4G par exemple)
-Ce PC portable est sous Linux avec Lampp installé dessus (ce qui inclus donc un serveur apache et mysql, entre autres)
-J’ai un PC fixe, sur lequel tourne Wampp avec l’adresse locale 192.168.0.49, sur lequel j’ai un "projettest" (quelques pages en PHP utilisant une base de données que j’avais fait auparavant)
-J’ai un utilisateur qui a tous les droits pour n’importe quel hôte sur la bdd de mon PC portable (je sais que c’est pas terrible niveau sécurité, mais c’est pour du test pour l’instant)
J’ai donc essayé de faire tourner mon projettest sur mon PC fixe en utilisant la base de données sur mon PC portable, et c’est là que je coince.
[Illustration de l’erreur]https://www.noelshack.com/2017-11-1489540551-capture.png
Et voici le code me permettant de me connecter à la base de données. Pour rappel, ce code est exécuté sur Wampp, sur la machine en 192.168.0.49 donc:
1 2 3 4 5 6 7 8 9 10 11 12 13 | <?php class ModeleGenerique { private static $dns = "mysql:host=192.168.0.12;dbname=projettest"; private static $user = "user"; private static $password = "mdp"; static protected $connexion; function __construct(){ self::$connexion = new PDO(self::$dns, self::$user, self::$password); } function getPDO(){ return self::$connexion; } ?> |
Je précise par ailleurs que si je mets "localhost" à la place de 192.168.0.12, le site "projettest" marche parfaitement.
Voilà, je reste disponible si vous avez besoin d’autres informations !
Merci beaucoup par avance pour vos réponses
Mayann