Have I read the related troubleshooter articles above before posting (which pages?)? scanned
Have I searched the tickets before posting? Yes
Have I read the documentation before posting (which pages?)? No
Joomla! version: 2.5.4
PHP version: 5.3.8
MySQL version: (unknown)
Host: pair.com
Admin Tools version: 2.2.5
Description of my issue:
We are trying to override the MySqli class to use MySql prepared statements for certain db queries. We added a php file, defining a class which overrides mysqli, to the libraries/joomla/database/database directory, and added our new class type (mysqlix) to the configuration file. The override mechanism works correctly for a regular Joomla 2.5.4 site, but when I have AdminTools installed, I get the following error:
Fatal error: Uncaught exception 'Exception' with message 'FrameworkOnFramework does not support the mysqlix database driver yet' in (webroot)/libraries/fof/query.abstract.php:137 Stack trace:
#0 (webroot)/administrator/components/com_admintools/models/storage.php(46): FOFQueryAbstract::getNew(Object(JDatabaseMySQLix))
#1 (webroot)/administrator/components/com_admintools/models/storage.php(29): AdmintoolsModelStorage->load()
#2 (webroot)/plugins/system/admintools/admintools/core.php(78): AdmintoolsModelStorage->getValue('combinecache', NULL)
#3 (webroot)/website_a1/plugins/system/admintools/admintools/main.php(48): plgSystemAdmintoolsCore->__construct(Object(JDispatcher), Array)
#4 (webroot)/libraries/joomla/plugin/helper.php(194): plgSystemAdmi in (webroot)/libraries/fof/query.abstract.php on line 137
The exception is thrown here in query.abstract.php
// -- Some sites use a mysqlcached or some other funky mysql driver
$type = strtolower($db->name);
if(strpos($type, 'mysql') && !in_array($type, array('mysql','mysqli'))) $type = 'mysql';
if(!array_key_exists($type, $classNames)) {
$cname = 'FOFQuery'.ucfirst($type);
if(!class_exists($cname, true)) {
throw new Exception("FrameworkOnFramework does not support the $type database driver yet");
}
$classNames[$type] = $cname;
}
I wondered if you had any insight on why the new database class might not be accessible when AdminTools is in the loop? I haven't found anything in the configuration that would indicate an issue. Disabling AdminTools and removing the custom .htaccess file did not remove the problem, and as I said, the only solution was to uninstall AdminTools.
Any suggestions appreciated.
Thanks
Mary Rogan