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

CodeIgniter PHP Discussion :

Une installation CodeIgniter et plusieurs bases de données selon l'URL


Sujet :

CodeIgniter PHP

  1. #1
    Membre éclairé
    Avatar de m-mas
    Homme Profil pro
    Directeur technique
    Inscrit en
    Février 2003
    Messages
    576
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Février 2003
    Messages : 576
    Points : 719
    Points
    719
    Par défaut Une installation CodeIgniter et plusieurs bases de données selon l'URL
    Bonjour,

    Je souhaite gérer un seul applicatif CodeIgniter (version 3.1) mais plusieurs bases de données MySQL.

    Je m'explique, l'application que je gère est une mini gestion commerciale dont l'applicatif ne change pas pour les clients mais que bien sûr chaque client possède ses données dans la base de données. Il est donc inutile de gérer plusieurs installation de CI.

    Je suis encore en phase de test en local et voilà ce que j'ai défini comme code dans database.php:
    Code PHP : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    if($_SERVER['SERVER_NAME'] == 'localhost'){
      $active_group = "user2";
      $db['user2']['database'] = "user2";    
    } else {
      $active_group = "user1";
      $db['user1']['database'] = "user1";  
    }
    $db['user1'] = array(
    	'dsn'	=> '',
    	'hostname' => 'localhost',
    	'username' => 'root',
    	'password' => '',
             ....
             ....
    );
     
    $db['user2'] = array(
    	'dsn'	=> '',
    	'hostname' => 'localhost',
    	'username' => 'root',
    	'password' => '',
             ....
             ....
    );

    Ce code ne fonctionne pas, puisque même si je met dans mon url http://localhost/monprojet je me connecte toujours sur la base user1 (qui est la base default au début)

    j'ai essayé de changé dans config.php la variable $config['base_url'] :
    Code PHP : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $config['base_url'] = $_SERVER['SERVER_NAME'].'/monprojet/';
    mais dans ce cas je reçoit l'erreur "localhost vous a redirigé à de trop nombreuses reprises."

    Des idées sur comment cela doit fonctionner pour ne gérer qu'une seule installation CI et plusieurs bases de données selon l'URL ?

    Merci.
    mon blog http://www.3click-solutions.com/actualites/

    MCP VB.NET (70-305) - (70-306) - (70-310)
    Développeur PHP / Wordpress

  2. #2
    Nouveau membre du Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Août 2016
    Messages
    44
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Août 2016
    Messages : 44
    Points : 34
    Points
    34
    Par défaut
    Salut,

    Tu as essayé de faire un var_dump($_SERVER['SERVER_NAME']) pour voir ce qu'il contenait exactement ?

Discussions similaires

  1. Réponses: 2
    Dernier message: 20/10/2015, 10h15
  2. Grand site portail, une ou plusieures bases de données ?
    Par manaboko dans le forum PHP & Base de données
    Réponses: 15
    Dernier message: 18/08/2008, 16h45
  3. Réponses: 1
    Dernier message: 21/04/2008, 12h06
  4. Réponses: 4
    Dernier message: 11/01/2008, 12h18
  5. Limiter la taille d'une ou plusieurs bases de données
    Par Thierry8 dans le forum Administration
    Réponses: 7
    Dernier message: 12/03/2006, 23h51

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