You are not logged in.

Announcement

 Téléchargez la dernière version stable de GLPI      -     Et vous, que pouvez vous faire pour le projet GLPI ? :  Contribuer
 Download last stable version of GLPI                      -     What can you do for GLPI ? :  Contribute

#1 2009-03-16 17:59:41

fdthierry
Member
Registered: 2009-02-19
Posts: 59

switch dans le fichier config_db

Bonjour,

Je souhaite mettre en place la fonction switch dans le fichier config_db.php

J'ai essayé ceci :

<?php 
class DB extends DBmysql { 
         // User et pass par défaut pour GLPI prod
     var $dbhost    = 'localhost'; 
     var $dbuser     = 'monuser'; 
     var $dbpassword= ''; 
     var $dbdefault    = 'glpi'; 
     
     // Nom de mon poste au cas par cas
    switch ($_SERVER['SERVER_NAME']) {
        case "monposte":
            $dbuser = 'monuser';
            $dbpassword = 'monpass';
        break;
    }
} 
 ?>

J'ai une erreur unexpected T_SWITCH, expecting T_FUNCTION

Une idée ?
Merci

Offline

#2 2009-03-16 19:23:50

TheHinou
Member
Registered: 2008-07-03
Posts: 434

Re: switch dans le fichier config_db

avoir la ligne causant l'erreur serait un plus ...

$_SERVER['SERVER_NAME'] renvoie bien quelque chose ?


Server : Windows 2003 - Apache 2.2.23 - Php 5.4.11  - Mysql 5.5.30 - Glpi 0.83.7

Offline

#3 2009-03-16 19:51:41

fdthierry
Member
Registered: 2009-02-19
Posts: 59

Re: switch dans le fichier config_db

$_SERVER['SERVER_NAME'] renvoi le nom du serveur sur lequel s'exécute ma page, en l'occurence monposte dans mon cas

L'erreur se situe au niveau de cette ligne

Mais pourquoi ?
Je ne vois rien d'anormal, j'utilise déjà cette fonctionnalité pour tous mes sites afin de tester en développement et en prod.

Merci

Offline

#4 2009-03-16 19:54:41

TheHinou
Member
Registered: 2008-07-03
Posts: 434

Re: switch dans le fichier config_db

euh mes connaissances en classes php sont un peu limité ... mais mettre du code dans une zone de déclaration ca serait pas ca qui fait foiré ?

Il faudrait mettre le switch dans le constructeur je pense


Server : Windows 2003 - Apache 2.2.23 - Php 5.4.11  - Mysql 5.5.30 - Glpi 0.83.7

Offline

#5 2009-03-16 20:36:42

fdthierry
Member
Registered: 2009-02-19
Posts: 59

Re: switch dans le fichier config_db

Je vais chercher de ce côté là, je ne suis pas un expert en php non plus ;o)

Offline

#6 2009-03-17 10:21:54

eboniface
Member
Registered: 2008-09-03
Posts: 23
Website

Re: switch dans le fichier config_db

En effet, on ne met pas de code dans la déclaration d'une classe. smile

Il faut que tu déclare un constructeur dans la classe DB, que tu y colle le code à executer, puis que tu appelle le constructeur de la classe DBmysql dans celui ci:

<?php 
class DB extends DBmysql { 
         // User et pass par défaut pour GLPI prod
     var $dbhost    = 'localhost'; 
     var $dbuser     = 'monuser'; 
     var $dbpassword= ''; 
     var $dbdefault    = 'glpi'; 
     
     function DB(){
          // Nom de mon poste au cas par cas
         switch ($_SERVER['SERVER_NAME']) {
            case "monposte":
             $this->dbuser = 'monuser';
             $this->dbpassword = 'monpass';
             break;
           }

           $this->DBmysql();
     }
} 
 ?>

Last edited by eboniface (2009-03-17 10:34:33)

Offline

#7 2009-03-17 10:32:12

fdthierry
Member
Registered: 2009-02-19
Posts: 59

Re: switch dans le fichier config_db

Merci j'essaie de suite, j'arrivais à la même conclusion, mais je ne voyais pas comment la mettre en pratique.

Offline

#8 2009-03-17 10:34:39

fdthierry
Member
Registered: 2009-02-19
Posts: 59

Re: switch dans le fichier config_db

Super, ça marche, merci beaucoup

Ce post peut être fermé

Offline

#9 2009-03-17 10:36:45

eboniface
Member
Registered: 2008-09-03
Posts: 23
Website

Re: switch dans le fichier config_db

Ok

Last edited by eboniface (2009-03-17 10:37:03)

Offline

Board footer

Powered by FluxBB