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 :

Connexions à 2 bases de données sur une même page [MySQL]


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de guy2004
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    805
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 805
    Par défaut Connexions à 2 bases de données sur une même page
    Bonjour,
    Je cherche à afficher des données provenant de 2 bases de données sur une même page mais j'arrive qu'à en afficher une. Je sais pas comment faire ?!
    Voici mon code :
    J'ai 2 fonctions de connection dans 2 fichiers differents :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    function db_connect()
    {
       $result = mysql_pconnect('sql7', 'mabase', 'lecode'); 
       if (!$result)
          return false;
       if (!mysql_select_db('mabase'))
          return false;
     
       return $result;
    }
    => lui s'appele : db_fns_fr.php

    Et voici la seconde :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    function db_connect()
    {
       $result = mysql_pconnect('sql8', 'mabase2', 'moncode'); 
       if (!$result)
          return false;
       if (!mysql_select_db('mabase2'))
          return false;
     
       return $result;
    }
    => lui s'appele db_fns.php
    et sur ma page je fais comme ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    include('db_fns.php');
     $conn = db_connect();
    // mes lignes d'affichage pour cette base
    include('db_fns_fr.php');
     $conn = db_connect();
    // mes lignes pour la seconde
    Seulement la seconde ne s'affiche pas

  2. #2
    Membre confirmé Avatar de dor_boucle
    Inscrit en
    Juin 2003
    Messages
    147
    Détails du profil
    Informations forums :
    Inscription : Juin 2003
    Messages : 147
    Par défaut
    je ne donnerai pas le meme nom à mes deux variables ni à mes deux fonctions...
    ne serait-ce que pour la lisibilité de ton code...

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    45
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 45
    Par défaut
    Oui tes fonctions ont le même nom donc le pc ne sais pas laquelle des 2 utilisées

  4. #4
    Membre éclairé Avatar de guy2004
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    805
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 805
    Par défaut
    pourtant j'avais changé le nom mais c'etait pareil ! Sinon techniquement c'est possible ?

  5. #5
    Membre confirmé
    Inscrit en
    Septembre 2005
    Messages
    48
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 48
    Par défaut
    Fais un include_once et si ça marche pas fais un require_once

  6. #6
    Membre confirmé Avatar de dor_boucle
    Inscrit en
    Juin 2003
    Messages
    147
    Détails du profil
    Informations forums :
    Inscription : Juin 2003
    Messages : 147
    Par défaut
    je ne l'ai jamais fait pour deux bases du même type, mais j'ai été jusqu'à connexion mysql+access+oracle sans aucun problème...
    je ne vois pas pourquoi tu n'y arriverais pas...

  7. #7
    Membre éclairé Avatar de guy2004
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    805
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 805
    Par défaut
    cela me met ca :
    Cannot redeclare db_connect() (previously declared in /home/www/admin_it/connections/db_fns.php:4) in /home/www/admin_it/connections/db_fns_fr.php on line 2

  8. #8
    Membre confirmé Avatar de dor_boucle
    Inscrit en
    Juin 2003
    Messages
    147
    Détails du profil
    Informations forums :
    Inscription : Juin 2003
    Messages : 147
    Par défaut
    et maintenant si tu renommes ta fonction?

  9. #9
    Membre éclairé Avatar de guy2004
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    805
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 805
    Par défaut
    et bien j'en ai une qui est :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    function db_connect_fr()
    et qui vient du fichier db_fns_fr.php, et une autre qui s'appele :
    et qui vient du fichier db_fns.php
    et sur ma page je fais :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    $conn = db_connect();
    et
     $conn_fr = db_connect_fr();

  10. #10
    Membre expérimenté
    Avatar de titoumimi
    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    3 707
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 3 707
    Par défaut
    et pourquoi ne pas passer le nom de ta base en paramètre de ta fonction pour être peinard ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    function db_connect($db_name)
    {
       $result = mysql_pconnect('sql7', 'monlogin', 'lecode');
       if (!$result)
          return false;
       if (!mysql_select_db($db_name))
          return false;
     
       return $result;
    }
    et tu l'apelle comme suit :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $result = db_connect("ma_base");
    :
    Globalement inoffensif
    Merci de respecter les règles du forum.
    Aucune question technique par MP !
    _______________________________________________________________________
    Cours Ruby et Ruby on Rails (RoR) - Cours PHP - FAQ Ruby / Rails - Livres Ruby / Rails
    Ajax facile avec Ruby on Rails, Prototype, script.aculo.us et les RJS
    Tutoriaux HTML/CSS et PHP

  11. #11
    Membre éclairé Avatar de guy2004
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    805
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 805
    Par défaut
    c'est bon les gars je vous remercie ca marche !

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

Discussions similaires

  1. Réponses: 3
    Dernier message: 21/05/2010, 10h43
  2. [MySQL] Connexion à deux bases de données sur la même page !
    Par Mike91 dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 13/06/2008, 10h27
  3. Réponses: 5
    Dernier message: 07/06/2007, 15h19
  4. [Conception] Raffraichissement de données sur une même page
    Par boulette85 dans le forum PHP & Base de données
    Réponses: 12
    Dernier message: 24/02/2007, 17h50
  5. [PHP-JS] Envoi de données sur une même page...
    Par dudux dans le forum Langage
    Réponses: 8
    Dernier message: 14/09/2005, 13h51

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