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

PHP & Base de données Discussion :

Comment accéder avec php à une base de données ne se trouvant pas sur le même domaine [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Membre habitué Avatar de Alexandrebox
    Profil pro
    Inscrit en
    Août 2006
    Messages
    635
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Août 2006
    Messages : 635
    Points : 153
    Points
    153
    Par défaut Comment accéder avec php à une base de données ne se trouvant pas sur le même domaine
    Bonsoir les amis.
    J'ai un méga problème.
    J'ai deux hébergement. Un sur un domaine (mondomaine.com) et le 2 (autredomaine.com)

    La base de données se trouve sur (mondomaine.com)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <?php
    //ce code se trouve dans le fichier dbok/connections.php' de (mondomaine.com)
    $idConnex = mysql_connect("localhost", "moiUser", "123456") or die("Connexion impossible. Si le probleme persiste, veuillez contacter l'administrateur.");
    $db = mysql_select_db("baseDb", $idConnex);
    ?>
    Le fichier qui va mettre à jour la donnée se trouve sur (autredomaine.com)
    Voici comment j'essaie de l'appeler et ça ne marche pas.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    include('http://www.mondomaine.com/dbok/connections.php');
    Comment faire? Parce que ma méthode n'est pas la bonne.

    Merci d'avance pour votre aide
    Je sais que je ne sais rien

  2. #2
    Membre confirmé
    Inscrit en
    Mai 2002
    Messages
    673
    Détails du profil
    Informations forums :
    Inscription : Mai 2002
    Messages : 673
    Points : 624
    Points
    624
    Par défaut
    Si j'ai bien compris, tu veux mettre la base dedonnée de domaine1 depuis un script s'executant sur domaine2 ?

    en fait, il faut écrire le script de modification des données de domaine1 directement sur domaine2, sauf que tu changes les parametres de connexion a la base de données en remplacant localhost par domaines1 dans les scripts sur domaine2. (bien entendu, il faut aussi changer les identifiants d'acces a la BDD)
    Si vous avez un message d'erreur, n'oubliez pas de le lire, la réponse à votre problème est surement dedans !

  3. #3
    Membre éprouvé
    Avatar de viviboss
    Profil pro
    Inscrit en
    Août 2006
    Messages
    943
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Gard (Languedoc Roussillon)

    Informations forums :
    Inscription : Août 2006
    Messages : 943
    Points : 1 248
    Points
    1 248
    Par défaut
    Oui, même sans ca il suffit juste que tu remplace ton "localhost" par l'url du serveur de la BDD....
    Veni Vidi Vici
    -------------------------
    Mes articles : developpez.com ou bien vbview.net
    -------------------------
    Et SURTOUT ne pas oublier la bible PHP : --> php_manual_fr.chm!!!
    Et aussi : --> pear_manual_fr.chm!!!

    Ou encore : --> Les tutoriaux & cours PHP de Développez.com
    -------------------------

  4. #4
    Membre habitué Avatar de Alexandrebox
    Profil pro
    Inscrit en
    Août 2006
    Messages
    635
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Août 2006
    Messages : 635
    Points : 153
    Points
    153
    Par défaut
    Le serveur sur domaine 1 est localhost.
    Donnez-moi un exemple SVP.
    Quand vous dites url, c'est comment alors?
    Sur domaine 2 j'ai ma page "modifier.php" depuis cette page, je dois modifier les données de la base du domaine 1.
    SVP donnez-moi un exemple concret. J'arrive à modifier la donnée si la page "modifier.php" est sur domaine 1. C'est quand c'est sur un autre domaine que ça pose problème. J'ai fait un lien absolu vers le script de connexion du domaine 1 mais ça ne marche pas.

    D'avance je vous remercie
    Je sais que je ne sais rien

  5. #5
    Membre expérimenté
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    1 349
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 349
    Points : 1 460
    Points
    1 460
    Par défaut
    pour te connecter a la base qui est sur l'autre domaine comme te la dit viviboss remplace:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $idConnex = mysql_connect("localhost", "moiUser", "123456")
    par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $idConnex = mysql_connect("www.mondomaine.com", "moiUser", "123456")
    Stay in Bed .. Save Energy

  6. #6
    Membre habitué Avatar de Alexandrebox
    Profil pro
    Inscrit en
    Août 2006
    Messages
    635
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Août 2006
    Messages : 635
    Points : 153
    Points
    153
    Par défaut
    Hello,

    Merci pour ton aide.
    J'ai fait exactement ce que tu as dit mais ça ne marche pas depuis le serveur 2. Voici le code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <?php
    //ce code se trouve dans le fichier dbok/connections.php' de (mondomaine.com)
    $idConnex = mysql_connect("http://www.mondomaine.com", "moiUser", "123456") or die("Connexion impossible. Si le probleme persiste, veuillez contacter l'administrateur.");
    $db = mysql_select_db("baseDb", $idConnex);
    ?>
    Voici le message d'erreur.
    Connexion impossible. Si le probleme persiste, veuillez contacter l'administrateur.");
    D'avance je vous remercie
    Je sais que je ne sais rien

  7. #7
    Membre confirmé
    Inscrit en
    Mai 2002
    Messages
    673
    Détails du profil
    Informations forums :
    Inscription : Mai 2002
    Messages : 673
    Points : 624
    Points
    624
    Par défaut
    Faut être sur dans un 2e temps que les connexion BDD soient autorisées depuis l'exterieur... En effet, SQL est un service, qui attend une connexion sur un port de comunication, et il faut s'assurer que les routeur/firewall relayent bien les demande de connexion sur le port de SQL vers la machine hébergeant SQL...
    Si vous avez un message d'erreur, n'oubliez pas de le lire, la réponse à votre problème est surement dedans !

  8. #8
    Membre éprouvé
    Avatar de viviboss
    Profil pro
    Inscrit en
    Août 2006
    Messages
    943
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Gard (Languedoc Roussillon)

    Informations forums :
    Inscription : Août 2006
    Messages : 943
    Points : 1 248
    Points
    1 248
    Par défaut
    Autant pour moi, il me semble que dans les enregistrements DNS de domaines tu as un enregistrement mysql : sur OVH par exemple, tu peux retrouver d'origine un enregistrement "mysql.domaine.tld"

    Si tu utilise HTTP dans l'URL, tu passes par le port 80, hors effectivement MySQL utilise un autre port de communication...

    Il faut que tu arrive à voir les enregistrements DNS inscrit sur ton domaine2, afin de voir la liste des services qui sont relayés sur cet hébergement, tu le verras assez facilement je pense C'est notamment dans ces enregistrements que tu as les redirection pop3.domaine.TLD, ftp.domaine.tld, etc....
    Veni Vidi Vici
    -------------------------
    Mes articles : developpez.com ou bien vbview.net
    -------------------------
    Et SURTOUT ne pas oublier la bible PHP : --> php_manual_fr.chm!!!
    Et aussi : --> pear_manual_fr.chm!!!

    Ou encore : --> Les tutoriaux & cours PHP de Développez.com
    -------------------------

  9. #9
    Membre confirmé
    Inscrit en
    Mai 2002
    Messages
    673
    Détails du profil
    Informations forums :
    Inscription : Mai 2002
    Messages : 673
    Points : 624
    Points
    624
    Par défaut
    normalement, www.domaine1.com ne résoud pas le port si on ne met pas http:// devant !
    Si vous avez un message d'erreur, n'oubliez pas de le lire, la réponse à votre problème est surement dedans !

  10. #10
    Membre éprouvé
    Avatar de viviboss
    Profil pro
    Inscrit en
    Août 2006
    Messages
    943
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Gard (Languedoc Roussillon)

    Informations forums :
    Inscription : Août 2006
    Messages : 943
    Points : 1 248
    Points
    1 248
    Par défaut
    Non, efectivement, mais si tu ne met pas le www et que tu mets simplement l'enregistrement DNS qui est prévu pour MySQL, soit juste "mysql.domaine.tld" comme tu mettrais "localhost", je pense que ca peut marcher, encore faut-il que cet enregistrement soit configuré sur le domaine....

    Ou bien alors, mettre juste le domaine et le port MySQL ? "domaine.tld:3306"....

    Je n'ai jamais essayé de faire ca....
    Veni Vidi Vici
    -------------------------
    Mes articles : developpez.com ou bien vbview.net
    -------------------------
    Et SURTOUT ne pas oublier la bible PHP : --> php_manual_fr.chm!!!
    Et aussi : --> pear_manual_fr.chm!!!

    Ou encore : --> Les tutoriaux & cours PHP de Développez.com
    -------------------------

  11. #11
    Membre éprouvé
    Avatar de viviboss
    Profil pro
    Inscrit en
    Août 2006
    Messages
    943
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Gard (Languedoc Roussillon)

    Informations forums :
    Inscription : Août 2006
    Messages : 943
    Points : 1 248
    Points
    1 248
    Par défaut
    Par adquis de conscience j'ai vérifié mes domaines, et je viens de me rendre compte que cette zone DNS n'existe pas....

    Désolé, j'étais persuadé....

    Cela dit, la piste du nom de domaine et du port MySQL reste valable !!
    Veni Vidi Vici
    -------------------------
    Mes articles : developpez.com ou bien vbview.net
    -------------------------
    Et SURTOUT ne pas oublier la bible PHP : --> php_manual_fr.chm!!!
    Et aussi : --> pear_manual_fr.chm!!!

    Ou encore : --> Les tutoriaux & cours PHP de Développez.com
    -------------------------

  12. #12
    Membre habitué Avatar de Alexandrebox
    Profil pro
    Inscrit en
    Août 2006
    Messages
    635
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Août 2006
    Messages : 635
    Points : 153
    Points
    153
    Par défaut
    Merci à vous tous avec votre aide et avec un peu de bon sens, voici ce que j'ai trouvé et qui marche. Il faut mettre en effet l'url du port Mysql.
    Donc mon exemple étant: localhost:1011

    il faut alors faire ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $idConnex = mysql_connect("localhost:1011", "moiUser", "123456")
    Merci à vous tous et profitez du soleil. Mais restez sages.
    Je sais que je ne sais rien

  13. #13
    Membre éprouvé
    Avatar de viviboss
    Profil pro
    Inscrit en
    Août 2006
    Messages
    943
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Gard (Languedoc Roussillon)

    Informations forums :
    Inscription : Août 2006
    Messages : 943
    Points : 1 248
    Points
    1 248
    Par défaut
    De rien, bon courage pour la suite (n'oublie pas de mettre résolu)
    Veni Vidi Vici
    -------------------------
    Mes articles : developpez.com ou bien vbview.net
    -------------------------
    Et SURTOUT ne pas oublier la bible PHP : --> php_manual_fr.chm!!!
    Et aussi : --> pear_manual_fr.chm!!!

    Ou encore : --> Les tutoriaux & cours PHP de Développez.com
    -------------------------

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 25/04/2013, 16h03
  2. Comment optimiser au mieux une base de données ?
    Par MadCat34 dans le forum Optimisations
    Réponses: 5
    Dernier message: 12/06/2007, 21h29
  3. Réponses: 3
    Dernier message: 19/09/2006, 16h36
  4. [VB.Net] Comment se déplacer dans une Base de données ?
    Par balabonov dans le forum Windows Forms
    Réponses: 7
    Dernier message: 08/08/2006, 22h44
  5. Comment arbitrer le choix Une base de donnée ou deux ?
    Par medstat2 dans le forum Décisions SGBD
    Réponses: 1
    Dernier message: 28/03/2006, 17h42

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