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 :

Plusieurs connexions MYSQL [MySQL]


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    134
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 134
    Par défaut Plusieurs connexions MYSQL
    Salut,

    J'aimerais savoir si c'est possible de se connecter à deux bases différentes d'un même serveur...

    Si oui, pouvez-vous me montrer le style de comme...

    (j'utilise PHP5 en procédure classique)

    Merci...

  2. #2
    Membre Expert
    Avatar de Eusebe
    Inscrit en
    Mars 2006
    Messages
    1 992
    Détails du profil
    Informations personnelles :
    Âge : 47

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 992
    Par défaut
    Citation Envoyé par boby15000 Voir le message
    Salut,

    J'aimerais savoir si c'est possible de se connecter à deux bases différentes d'un même serveur...

    Si oui, pouvez-vous me montrer le style de comme...

    (j'utilise PHP5 en procédure classique)

    Merci...
    Bonjour,

    C'est tout à fait possible. L'exemple dépend des fonctions utilisées pour dialoguer avec la base MySQL (PDO, Mysql, Mysqli...). Par exemple, avec mysql_*, mysql_connect renvoie une ressource qui doit être passée en paramètre aux autres fonctions (par exemple mysql_query). Avec les autres bibliothèques, le principe est similaire.

  3. #3
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Si ce sont deux bases sur le meme serveur mysql, tu peux aussi les appeller naturellement avec la meme connexion.
    Il faut juste bien indiquer le nom de la base quand on tape en dehors de la base selectionnée
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    $link = mysql_connect('localhost', 'mysql_user', 'mysql_password');
    $db_selected = mysql_select_db('premiere_base', $link);
     
    $sql = 'SELECT colonne FROM autre_base.table';
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    134
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 134
    Par défaut
    Citation Envoyé par sabotage Voir le message
    Si ce sont deux bases sur le meme serveur mysql, tu peux aussi les appeller naturellement avec la meme connexion.
    Il faut juste bien indiquer le nom de la base quand on tape en dehors de la base selectionnée
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    $link = mysql_connect('localhost', 'mysql_user', 'mysql_password');
    $db_selected = mysql_select_db('premiere_base', $link);
     
    $sql = 'SELECT colonne FROM autre_base.table';
    Autrement dit j'utilise :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    $link = mysql_connect('localhost', 'mysql_user', 'mysql_password');
    $Base_1 = mysql_select_db('Base_1', $link);
    $Base_2 = mysql_select_db('$Base_2', $link);
    et avant la requéte j'appelle la base que j'ai besoin
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    if ($Base_2)
    {
    $sql = 'SELECT colonne FROM autre_base.table';
    ..........................................
    }
    Est-ce que j'ai raison ? Ou y-a-t'il plus simple encore ?

  5. #5
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Ou y-a-t'il plus simple encore ?
    Oui, de faire comme je l'ai indiqué. C'est a dire simplement bien nommer dans tes requetes les colonnes venant d'une autre base que celle selectionnée "base.colonne"

    mysql_select_db renvoit TRUE ou FALSE, mais pas un identifiant.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  6. #6
    Expert éminent
    Avatar de CinePhil
    Homme Profil pro
    Ingénieur d'études en informatique
    Inscrit en
    Août 2006
    Messages
    16 814
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur d'études en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2006
    Messages : 16 814
    Billets dans le blog
    14
    Par défaut
    Le plus simple est carrément de ne pas faire de mysql_select_db.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT t1.col1, t2.col2
    FROM base1.table1 t1
    INNER JOIN base2.table2 t2 ON t1.id = t2.id
    Philippe Leménager. Ingénieur d'étude à l'École Nationale Supérieure de Formation de l'Enseignement Agricole, en retraite... mais toujours Autoentrepreneur à l'occasion.
    Mon ancien blog sur la conception des BDD, le langage SQL, le PHP... et mon nouveau blog sur les mêmes sujets.
    « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau)
    À la maison comme au bureau, j'utilise la suite Linux Mageïa !

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    134
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 134
    Par défaut
    Ok, je comprends pour cette requéte :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $sql = 'SELECT colonne FROM autre_base.table';
    Mais comment fais-tu pour une requete :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    CREATE TABLE Films (............)

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

Discussions similaires

  1. [MySQL] Plusieur connexion Mysql
    Par m4riachi dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 19/07/2013, 17h21
  2. [MySQL] Maintenir la connexion MySQL sur plusieurs pages
    Par fregolo52 dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 03/10/2008, 11h21
  3. [Connexion MySQL] Can't connect to MySQL server
    Par mat_dum dans le forum Outils
    Réponses: 12
    Dernier message: 17/07/2003, 07h49
  4. comment gerer plusieurs connexions client/serveur
    Par naili dans le forum C++Builder
    Réponses: 3
    Dernier message: 14/08/2002, 16h58
  5. [Kylix] [cgi] pb déploiement appli avec connexion MySQL [rés
    Par Nepomiachty Olivier dans le forum EDI
    Réponses: 3
    Dernier message: 06/08/2002, 20h09

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