$this->statement = $connection->prepare($query);
if (!$this->statement)
{
throw new PrepareStatementFailureException($this->connection->error, $this->connection->errno);
}
}
/**
* Replace named parameters with numbered parameters
* @since 2.0.0
* @throws PrepareStatementFailureException
*/
protected function prepareStatement(string $query): StatementInterface
{
return new MysqliStatement($this->connection, $query);
}
/**
* Unlocks tables in the database.
*
$query->setLimit($limit, $offset);
$sql = $this->replacePrefix((string) $query);
$this->statement = $this->prepareStatement($sql);
$this->sql = $query;
$this->limit = (int) max(0, $limit);
$this->offset = (int) max(0, $offset);
)
->bind(':currentDate2', $currentDate)
->order($this->db->quoteName('m.lft'));
$items = [];
$iterator = $this->db->setQuery($query)->getIterator();
foreach ($iterator as $item)
{
$items[$item->id] = new MenuItem((array) $item);
}
}
// Just execute the callback if caching is disabled.
if (empty($this->options['caching']))
{
return \call_user_func_array($callback, $referenceArgs);
}
if (!$id)
{
// Generate an ID
{
/** @var CallbackController $cache */
$cache = Factory::getContainer()->get(CacheControllerFactoryInterface::class)
->createCacheController('callback', ['defaultgroup' => 'com_menus']);
$this->items = $cache->get($loader, array(), md5(\get_class($this)), false);
}
catch (CacheExceptionInterface $e)
{
try
{
*/
public function getMenu()
{
if (!$this->itemsLoaded)
{
$this->load();
foreach ($this->items as $item)
{
if ($item->home)
{
*/
public function getItem($id)
{
$result = null;
if (isset($this->getMenu()[$id]))
{
$result = &$this->getMenu()[$id];
}
return $result;
$menu = $this->getMenu();
$item = $menu->getActive();
if (!$item)
{
$item = $menu->getItem($this->input->getInt('Itemid', null));
}
$id = 0;
if (\is_object($item))
public function render(\Throwable $error): string
{
$app = Factory::getApplication();
// Get the current template from the application
$template = $app->getTemplate(true);
// Push the error object into the document
$this->getDocument()->setError($error);
// Add registry file for the template asset
// Reset the document object in the factory, this gives us a clean slate and lets everything render properly
Factory::$document = $renderer->getDocument();
Factory::getApplication()->loadDocument(Factory::$document);
$data = $renderer->render($error);
// If nothing was rendered, just use the message from the Exception
if (empty($data))
{
$data = $error->getMessage();
* @since 3.10.0
*/
public static function handleException(\Throwable $error)
{
static::logException($error);
static::render($error);
}
/**
* Render the error page based on an exception.
*
);
// Trigger the onError event.
$this->triggerEvent('onError', $event);
ExceptionHandler::handleException($event->getError());
}
// Trigger the onBeforeRespond event.
$this->getDispatcher()->dispatch('onBeforeRespond');
// Set the application as global app
\Joomla\CMS\Factory::$application = $app;
// Execute the application.
$app->execute();
* define() is used rather than "const" to not error for PHP 5.2 and lower
*/
define('_JEXEC', 1);
// Run the application - All executable code should be triggered through this file
require_once dirname(__FILE__) . '/includes/app.php';
$this->statement = $connection->prepare($query);
if (!$this->statement)
{
throw new PrepareStatementFailureException($this->connection->error, $this->connection->errno);
}
}
/**
* Replace named parameters with numbered parameters
* @since 2.0.0
* @throws PrepareStatementFailureException
*/
protected function prepareStatement(string $query): StatementInterface
{
return new MysqliStatement($this->connection, $query);
}
/**
* Unlocks tables in the database.
*
$query->setLimit($limit, $offset);
$sql = $this->replacePrefix((string) $query);
$this->statement = $this->prepareStatement($sql);
$this->sql = $query;
$this->limit = (int) max(0, $limit);
$this->offset = (int) max(0, $offset);
)
->bind(':currentDate2', $currentDate)
->order($this->db->quoteName('m.lft'));
$items = [];
$iterator = $this->db->setQuery($query)->getIterator();
foreach ($iterator as $item)
{
$items[$item->id] = new MenuItem((array) $item);
}
}
// Just execute the callback if caching is disabled.
if (empty($this->options['caching']))
{
return \call_user_func_array($callback, $referenceArgs);
}
if (!$id)
{
// Generate an ID
{
/** @var CallbackController $cache */
$cache = Factory::getContainer()->get(CacheControllerFactoryInterface::class)
->createCacheController('callback', ['defaultgroup' => 'com_menus']);
$this->items = $cache->get($loader, array(), md5(\get_class($this)), false);
}
catch (CacheExceptionInterface $e)
{
try
{
*/
public function getMenu()
{
if (!$this->itemsLoaded)
{
$this->load();
foreach ($this->items as $item)
{
if ($item->home)
{
$items = array();
$attributes = (array) $attributes;
$values = (array) $values;
$count = \count($attributes);
foreach ($this->getMenu() as $item)
{
if (!\is_object($item))
{
continue;
}
// Reset arrays or we get a notice if some values were unset
$attributes = array_values($attributes);
$values = array_values($values);
return parent::getItems($attributes, $values, $firstonly);
}
/**
* Get menu item by id
*
$route = implode('/', \array_slice($segments, 2));
}
else
{
// Get menu items.
$items = $this->menu->getItems(['parent_id', 'access'], [1, null]);
$lang_tag = $this->app->getLanguage()->getTag();
$found = null;
foreach ($segments as $segment)
{
throw new \InvalidArgumentException(sprintf('The %s stage is not registered. (%s)', $stage, __METHOD__));
}
foreach ($this->rules['parse' . $stage] as $rule)
{
$rule($this, $uri);
}
}
/**
* Process the build uri query data based on custom defined rules
{
// Do the preprocess stage of the URL parse process
$this->processParseRules($uri, self::PROCESS_BEFORE);
// Do the main stage of the URL parse process
$this->processParseRules($uri);
// Do the postprocess stage of the URL parse process
$this->processParseRules($uri, self::PROCESS_AFTER);
// Check if all parts of the URL have been parsed.
{
// Get the full request URI.
$uri = clone Uri::getInstance();
$router = static::getRouter();
$result = $router->parse($uri, true);
$active = $this->getMenu()->getActive();
if ($active !== null
&& $active->type === 'alias'
* @since 3.2
*/
protected function route()
{
// Execute the parent method
parent::route();
$Itemid = $this->input->getInt('Itemid', null);
$this->authorise($Itemid);
}
// Mark afterInitialise in the profiler.
JDEBUG ? $this->profiler->mark('afterInitialise') : null;
// Route the application
$this->route();
// Mark afterRoute in the profiler.
JDEBUG ? $this->profiler->mark('afterRoute') : null;
/*
$this->sanityCheckSystemVariables();
$this->setupLogging();
$this->createExtensionNamespaceMap();
// Perform application routines.
$this->doExecute();
// If we have an application document object, render it.
if ($this->document instanceof \Joomla\CMS\Document\Document)
{
// Render the application output.
// Set the application as global app
\Joomla\CMS\Factory::$application = $app;
// Execute the application.
$app->execute();
* define() is used rather than "const" to not error for PHP 5.2 and lower
*/
define('_JEXEC', 1);
// Run the application - All executable code should be triggered through this file
require_once dirname(__FILE__) . '/includes/app.php';
[2/2]
PrepareStatementFailureException
|
---|
Joomla\Database\Exception\PrepareStatementFailureException: Unknown column 'm.publish_up' in 'where clause' at /home/autotriple/domains/citroenauto.hu/public_html/libraries/vendor/joomla/database/src/Mysqli/MysqliStatement.php:141 at Joomla\Database\Mysqli\MysqliStatement->__construct() (/home/autotriple/domains/citroenauto.hu/public_html/libraries/vendor/joomla/database/src/Mysqli/MysqliDriver.php:1048) at Joomla\Database\Mysqli\MysqliDriver->prepareStatement() (/home/autotriple/domains/citroenauto.hu/public_html/libraries/vendor/joomla/database/src/DatabaseDriver.php:1900) at Joomla\Database\DatabaseDriver->setQuery() (/home/autotriple/domains/citroenauto.hu/public_html/libraries/src/Menu/SiteMenu.php:155) at Joomla\CMS\Menu\SiteMenu->Joomla\CMS\Menu\{closure}() (/home/autotriple/domains/citroenauto.hu/public_html/libraries/src/Cache/Controller/CallbackController.php:52) at Joomla\CMS\Cache\Controller\CallbackController->get() (/home/autotriple/domains/citroenauto.hu/public_html/libraries/src/Menu/SiteMenu.php:171) at Joomla\CMS\Menu\SiteMenu->load() (/home/autotriple/domains/citroenauto.hu/public_html/libraries/src/Menu/AbstractMenu.php:338) at Joomla\CMS\Menu\AbstractMenu->getMenu() (/home/autotriple/domains/citroenauto.hu/public_html/libraries/src/Menu/AbstractMenu.php:157) at Joomla\CMS\Menu\AbstractMenu->getItem() (/home/autotriple/domains/citroenauto.hu/public_html/libraries/src/Application/SiteApplication.php:429) at Joomla\CMS\Application\SiteApplication->getTemplate() (/home/autotriple/domains/citroenauto.hu/public_html/libraries/src/Error/Renderer/HtmlRenderer.php:47) at Joomla\CMS\Error\Renderer\HtmlRenderer->render() (/home/autotriple/domains/citroenauto.hu/public_html/libraries/src/Exception/ExceptionHandler.php:131) at Joomla\CMS\Exception\ExceptionHandler::render() (/home/autotriple/domains/citroenauto.hu/public_html/libraries/src/Exception/ExceptionHandler.php:74) at Joomla\CMS\Exception\ExceptionHandler::handleException() (/home/autotriple/domains/citroenauto.hu/public_html/libraries/src/Application/CMSApplication.php:311) at Joomla\CMS\Application\CMSApplication->execute() (/home/autotriple/domains/citroenauto.hu/public_html/includes/app.php:63) at require_once('/home/autotriple/domains/citroenauto.hu/public_html/includes/app.php') (/home/autotriple/domains/citroenauto.hu/public_html/index.php:32) |
[1/2]
PrepareStatementFailureException
|
---|
Joomla\Database\Exception\PrepareStatementFailureException: Unknown column 'm.publish_up' in 'where clause' at /home/autotriple/domains/citroenauto.hu/public_html/libraries/vendor/joomla/database/src/Mysqli/MysqliStatement.php:141 at Joomla\Database\Mysqli\MysqliStatement->__construct() (/home/autotriple/domains/citroenauto.hu/public_html/libraries/vendor/joomla/database/src/Mysqli/MysqliDriver.php:1048) at Joomla\Database\Mysqli\MysqliDriver->prepareStatement() (/home/autotriple/domains/citroenauto.hu/public_html/libraries/vendor/joomla/database/src/DatabaseDriver.php:1900) at Joomla\Database\DatabaseDriver->setQuery() (/home/autotriple/domains/citroenauto.hu/public_html/libraries/src/Menu/SiteMenu.php:155) at Joomla\CMS\Menu\SiteMenu->Joomla\CMS\Menu\{closure}() (/home/autotriple/domains/citroenauto.hu/public_html/libraries/src/Cache/Controller/CallbackController.php:52) at Joomla\CMS\Cache\Controller\CallbackController->get() (/home/autotriple/domains/citroenauto.hu/public_html/libraries/src/Menu/SiteMenu.php:171) at Joomla\CMS\Menu\SiteMenu->load() (/home/autotriple/domains/citroenauto.hu/public_html/libraries/src/Menu/AbstractMenu.php:338) at Joomla\CMS\Menu\AbstractMenu->getMenu() (/home/autotriple/domains/citroenauto.hu/public_html/libraries/src/Menu/AbstractMenu.php:265) at Joomla\CMS\Menu\AbstractMenu->getItems() (/home/autotriple/domains/citroenauto.hu/public_html/libraries/src/Menu/SiteMenu.php:266) at Joomla\CMS\Menu\SiteMenu->getItems() (/home/autotriple/domains/citroenauto.hu/public_html/libraries/src/Router/SiteRouter.php:228) at Joomla\CMS\Router\SiteRouter->parseSefRoute() (/home/autotriple/domains/citroenauto.hu/public_html/libraries/src/Router/Router.php:400) at Joomla\CMS\Router\Router->processParseRules() (/home/autotriple/domains/citroenauto.hu/public_html/libraries/src/Router/Router.php:144) at Joomla\CMS\Router\Router->parse() (/home/autotriple/domains/citroenauto.hu/public_html/libraries/src/Application/CMSApplication.php:1069) at Joomla\CMS\Application\CMSApplication->route() (/home/autotriple/domains/citroenauto.hu/public_html/libraries/src/Application/SiteApplication.php:820) at Joomla\CMS\Application\SiteApplication->route() (/home/autotriple/domains/citroenauto.hu/public_html/libraries/src/Application/SiteApplication.php:228) at Joomla\CMS\Application\SiteApplication->doExecute() (/home/autotriple/domains/citroenauto.hu/public_html/libraries/src/Application/CMSApplication.php:278) at Joomla\CMS\Application\CMSApplication->execute() (/home/autotriple/domains/citroenauto.hu/public_html/includes/app.php:63) at require_once('/home/autotriple/domains/citroenauto.hu/public_html/includes/app.php') (/home/autotriple/domains/citroenauto.hu/public_html/index.php:32) |