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 :

[PHP / BDD Access] Connexion bdd distante


Sujet :

PHP & Base de données

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 3
    Points : 2
    Points
    2
    Par défaut [PHP / BDD Access] Connexion bdd distante
    Bonjour,

    Je rencontre depuis quelques jours un problème (si celui-ci en ai un puisqu'il ne s'est pas encore présenté mais risque de l'être très rapidement) concernant la connexion d'un serveur A (site client) à une base de données Access sur un serveur B.

    - Le langage de programmation utilisé pour se connecter à la BDD Access est PHP qui est interprété sur le serveur A.
    - La bdd Access est présente sur le serveur B

    Après plusieurs recherches sur le net, j'ai remarqué que je n'étais pas le premier (heureusement) à demander de l'aide dans la démarche à suivre.
    Je me suis vite rendu compte que si certaines personnes avaient trouvé des réponses à leur problème, ils ne la partageaient pas par oubli surement ou par "Mon problème est résolu, merci mais pas la motivation de dire comment je l'ai résolu".

    Bref l'un de mes clients met à ma disposition un certain nombres d'informations qui doivent me permettre de me connecter à leur bdd Access distante :

    - Serveur A
    - | - Le module sera déployé sur une plate-forme Apache / PHP 5 avec connexion odbc active

    - Serveur B
    - | - Nom de Domaine : "nom_de_domaine"
    - | - Serveur win 2003 :
    - | - | - Nom : "server_X"
    - | - | - Adresse IP : "XXX.XXX.XXX.XXX"
    - | - | - Port : "XXXX"
    - | - | - Chemin d'accès bdd : \\server\xxxxx\xxxxx\fichier.mdb
    - | - Login :
    - | - | - user : "user"
    - | - | - password : "password"


    Mes recherches à travers le net et les forums (tutos / questions-réponses / etc.) m'ont permis de mieux comprendre comment se connecter à une base de données Access distante.
    Cependant, je doute que cela puisse suffire pour se lancer tête baissé dans le développement du module php.
    Donc je confectionne des briques de test avant de les rassemblé pour faire un tout.

    Voici le code qui m'a permit de me connecter à une bdd access en local :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    <?php
    $user = "root";
    $pwd = "";
    $dsn = "Driver={Microsoft Access Driver (*.mdb)};Dbq=C:\fichier.mdb";
     
    $cnx = odbc_connect ($dsn, $user, $pwd) or die ('impossible de se connecter');
     
    $query = "SELECT ...";
    $process = odbc_exec ($cnx, $query);
    $row = odbc_fetch_array ($process);
    odbc_close($cnx);
    ?>
    Ce code fonctionne et me permet de me connecter à une bdd access local ayant pour chemin d'accès "C:\fichier.mdb".

    Cependant, c'est lorsque la BDD Access devra être accessible à distance que cela se complique.

    J'ai quelques idées après recherches mais je souhaiterai avoir votre point de vue et me dire ce qui ne va pas dans le code ci-dessous. De plus, dites moi si les informations que j'ai à ma disposition sont suffisantes.

    En gras le code PHP modifié (par rapport au code en local).

    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
    <?php
    $user = "user";
    $pwd = "password";
    $serverIP = "XXX.XXX.XXX.XXX:XXXX"; // IP + Port
    $pathMDB = "\\server_X\xxxxx\xxxxx\fichier.mdb";
     
    $dsn = "Driver={Microsoft Access Driver (*.mdb)};Server=$server;Dbq=$pathMDB ;Uid=$user;Pwd=$pwd;";
     
    $cnx = odbc_connect ($dsn, $user, $pwd) or die ('impossible de se connecter');
     
    $query = "SELECT ...";
    $process = odbc_exec ($cnx, $query);
    $row = odbc_fetch_array ($process);
    odbc_close($cnx);
    ?>
    J'ai essayé d'être le plus clair possible, mais s'il vous manque des explications / renseignements, n'hésitez pas à me les demander .
    Merci d'avance à tous ceux qui m'aideront.

  2. #2
    Membre habitué Avatar de sigap
    Inscrit en
    Avril 2002
    Messages
    113
    Détails du profil
    Informations forums :
    Inscription : Avril 2002
    Messages : 113
    Points : 166
    Points
    166
    Par défaut
    J'ai trouvé une opportunité "parallele" a ton besoin. Il s'agit tout de meme d'acceder a une base de données Access distante, maissur un serveur IIS et avec de l'ASP. De toute facons, tu pourrais tres aisement implementer un serveur IIS en local si tu ne trouves pas une solution alternative.

    Voici le lien http://support.microsoft.com/kb/253580

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 3
    Points : 2
    Points
    2
    Par défaut
    Bonjour sigap et merci pour ta réponse.

    Je viens de lire la page du lien que tu as posté, et cela m'a permis de mieux comprendre les étapes pour accéder à une base de données Access distante.

    Le temps que le client se réveil et ouvre un port d'accès, je continue mais recherches.

    Une fois la solution trouvée, je reviendrai l'exposer à la suite de ce post.
    D'ici là, bonne continuation !

Discussions similaires

  1. [MySQL] php: une seule connexion bdd pour plusieurs pages
    Par hammag dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 21/04/2009, 16h28
  2. Réponses: 5
    Dernier message: 28/01/2009, 17h17
  3. Erreur connexion bdd access
    Par offspring dans le forum C#
    Réponses: 9
    Dernier message: 12/07/2008, 02h15
  4. [ODBC] Connexion BDD Access avec "new com" - utilisation de odbc_fetch_row ?
    Par polothentik dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 29/04/2008, 16h12
  5. Connexion BDD access
    Par Solly dans le forum JDBC
    Réponses: 8
    Dernier message: 25/04/2008, 14h01

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