Connectez script autonome pour joomla DB à l'aide du cadre de
Im en train d'écrire un script qui sera exécuté comme une tâche cron pour faire quelques calculs en utilisant des valeurs de la base de données joomla, Parce que ce script ne va pas être accessibles via joomla comme un plugin, etc j'ai besoin de faire DB connections avec elle.
Ce que im essayant de faire est d'utiliser le Joomla framework pour faire tout le travail(Connexion, requêtes, etc) pour la sécurité et également de portabilité. (au lieu d'avoir un autre ensemble d'identifiants de connexion dans ce script sa tous manipulés par le Joomla config)
J'ai fait du mieux que je peux mais quand je lance le script j'obtiens 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 informations de connection à mysql sont corrects (ce 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);
?>
OriginalL'auteur kwhohasamullet | 2010-11-27
Vous devez vous connecter pour publier un commentaire.
essayer cette
OriginalL'auteur pwmpro
Cela fonctionne pour Joomla 2.5 (3,5)
EDIT: Le but ici est de se connecter à la base de données à l'aide de déjà mis en place Joomla de configuration et d'exécuter des requêtes SQL de Joomla DBO. De cette façon, nous pouvons faire des choses, comme l'insertion des trucs dans des tables sans avoir à entrer manuellement les informations d'identification dans notre script.
OriginalL'auteur atpatil11
ici est le joomla code d'amorçage pour joomla 3.x. Assurez-vous que votre JOOMLA_PATH est correct, il doit être le chemin de votre installation Joomla
OriginalL'auteur aldo
Réparer "requête" dépréciation d'avertissement utiliser
JDatabaseDriver
au lieuJDatabase
:OriginalL'auteur Athos