Cooment (encore) accéder à base mysql extérieure à joomla?

Réduire
X
 
  • Filtrer
  • Heure
  • Afficher
Tout effacer
nouveaux messages

  • Cooment (encore) accéder à base mysql extérieure à joomla?

    Bonjour.
    Je vois qu'il y a déjà eu plusieurs discussions sur ce sujet, mais pas de solution (du moins je n'en n'ai pas trouvé)
    Mon problème : j'ai développé un module perso, pour une association, qui utilise une base de donnée connexe que j'appellerai, pour l'exemple "MaBase" et que j'intègre à l'aide de JUMI.

    J'ai mis ce code (que l'on trouve souvent sur ce forum et ailleurs) :

    Code:
    defined('_JEXEC') OR die;
    $maconfig=new JConfig();
    $options = array 
    (
      'driver' => $maconfig->dbtype,
      'prefix' => '',   //$maconfig->dbprefix,
      'host'   => $maconfig->host,
      'user'   =>  $maconfig->user,
      'password' => $maconfig->password,
      'database' => "MaBase" 
    );
    
    // Connexion à  la base    
    $myDB = & JDatabase::getInstance( $options );
    
    // Test si il y a eu une erreur lors de la connexion
    if ( JError::isError($myDB) )
      die("Erreur de connexion à la base : ".$myDB->toString() );
    Tout fonctionne très bien sauf que mon fichier apache error.log se rempli très vite ( Only variables should be assigned by reference in etc. )

    (La solution de mettre $error_reporting à '6143' dans le fichier de config ne me satisfait évidemment pas)

    Merci d'avance pour votre aide

    P.S. : si on fai une recherche sur le net du message d'erreur, on trouve énormément de résultats, preuve que je ne suis pas le seul à avoir ce problème !
    JbyVosges Joomla 3.6.5
    www.jbyorchid.fr
    www.dolman.fr
    www.sfola.fr (joomla)

  • #2
    Re : Cooment (encore) accéder à base mysql extérieure à joomla?

    Bonjour,

    Code PHP:
    $myDB = & JDatabase::getInstance$options ); 
    devrait être
    Code PHP:
    $myDB JDatabase::getInstance$options ); 
    JDatabase renvoyant une instance d'objet, qui est naturellement une référence, il ne faut pas ce & (qui était utilisé dans l'antédiluvien PHP4 pour retourner une référence, mais est obsolète depuis 2005).
    Pas de demande de support par MP.
    S'il n'y a pas de solution, c'est qu'il n'y a pas de problème (Devise Shadok)

    Commentaire


    • #3
      Re : Cooment (encore) accéder à base mysql extérieure à joomla?

      Merci jisse03 : j'ai corrigé mon php, mais j'ai aussi corrigé pas mal de lignes dans JUMI et je n'ai plus ces messages. Désolé de ma réaction un peu tardive.

      Il ne reste plus que le message :
      Strict Standards: Declaration of JCacheControllerPage::store() should be compatible with JCacheController::store
      je cherche, mais je crois que c'est une erreur récurrente : en faisant une recherche sur la toile on trouve des centaines de réponses.
      JbyVosges Joomla 3.6.5
      www.jbyorchid.fr
      www.dolman.fr
      www.sfola.fr (joomla)

      Commentaire


      • #4
        Re : Cooment (encore) accéder à base mysql extérieure à joomla?

        Vu que le sujet concerne Joomla! 2.5, il y avait en effet un manque de riugueur dans la définition des surcharges de quelques méthodes de classes héritées, dont celle-ci.
        La définition de JCacheController::store étant
        Code PHP:
        public function store($data$id$group null
        tandis que dans la classe dérivée JCacheControllerPage, store est défini
        Code PHP:
        public function store($wrkarounds true
        ce qui ne nuit pas au fonctionnement mais fait raler quelque peu PHP 5.4 et supérieurs, qui sont beaucoup moins cools sur la syntaxe que ne l'étaient PHP 5.2 et 5.3 (Joomla! 2.5 datant de ces versions de PHP).

        Sous Joomla! 3.x, ces méthodes des mêmes classes ont bien la même déclaration. L'acte de décès de Joomla! 2.5 ayant été signé ce premier janvier, il te faudra penser à migrer rapidement vers 3.x
        Pas de demande de support par MP.
        S'il n'y a pas de solution, c'est qu'il n'y a pas de problème (Devise Shadok)

        Commentaire


        • #5
          Re : Cooment (encore) accéder à base mysql extérieure à joomla?

          Envoyé par jisse03 Voir le message
          Sous Joomla! 3.x, ces méthodes des mêmes classes ont bien la même déclaration. L'acte de décès de Joomla! 2.5 ayant été signé ce premier janvier, il te faudra penser à migrer rapidement vers 3.x
          Et bien voila : il n'y avait qu`à demander ... (merci encore) : je suis passé en 3.3.6. Je ne dirai pas que ça c'est passé en douceur, mais j'ai fini par y arriver. J'ai passé par ex. une demi journée pour mettre le template isis par défaut (hathor était défini par défaut dans le template favori de l'utilisateur; c'est pas là que j'aurais pensé à chercher !)
          JbyVosges Joomla 3.6.5
          www.jbyorchid.fr
          www.dolman.fr
          www.sfola.fr (joomla)

          Commentaire


          • #6
            Re : Cooment (encore) accéder à base mysql extérieure à joomla?

            Si c'est réglé merci de l'indiquer :
            Lorsque l'on se cogne la tête contre un pot et que cela sonne creux, ça n'est pas forcément le pot qui est vide.
            Confucius

            Commentaire

            Annonce

            Réduire
            Aucune annonce pour le moment.

            Partenaire de l'association

            Réduire

            Hébergeur Web PlanetHoster
            Travaille ...
            X