J'écris actuellement un script qui sera exécuté en tant que cronjob pour faire des calculs en utilisant des valeurs de la base de données joomla, car ce script ne sera pas accessible via joomla comme un plugin etc j'ai besoin de faire des connexions DB avec. Ce que j'essaie de faire est d'utiliser le framework Joomla pour faire tout le travail (connexion, requêtes, etc) à des fins de sécurité et de portabilité (au lieu d'avoir un autre jeu d'identifiants dans ce script config Joomla)Connectez un script autonome à joomla DB en utilisant framework
je l'ai fait le mieux que je peux, mais quand je lance le script que je reçois l'erreur suivante:
Database Error: Unable to connect to the database:Could not connect to MySQL
J'ai imprimé la variable et fait en sorte que les détails de connexion pour MySQL sont corrects (qu'ils sont).
Mon code actuel est:
<?php
//init Joomla Framework
define('_JEXEC', 1);
define('JPATH_BASE', realpath(dirname(__FILE__).'/..'));
define('DS', DIRECTORY_SEPARATOR);
require_once (JPATH_BASE .DS.'includes'.DS.'defines.php');
require_once (JPATH_BASE .DS.'includes'.DS.'framework.php');
require_once(JPATH_CONFIGURATION .DS.'configuration.php');
require_once (JPATH_BASE .DS.'includes'.DS.'database.php');
require_once (JPATH_LIBRARIES .DS.'joomla'.DS.'import.php');
//DB Connection
$Config = new JConfig();
$option['driver'] = $Config->dbtype; // Database driver name
$option['host'] = $Config->host; // Database host name
$option['user'] = $Config->user; // User for database authentication
$option['password'] = $Config->password; // Password for database authentication
$option['database'] = $Config->db; // Database name
$option['prefix'] = $Config->dbprefix; // Database prefix (may be empty)
$db = & JDatabase::getInstance($option);
//DBQuery
$database =& JFactory::getDBO();
$query = "SELECT * FROM #__chronoforms_RD_NonDangerousGoods WHERE cf_id = 4;";
$database->setQuery($query);
$result = $database->query();
print_r($result);
?>
Cela n'a pas fonctionné pour moi. J'utilise Joomla 2.5 – atpatil11