Класс 'JTable' не найден
Я использую Joomla 2.5.11 . У меня есть php-файл, хранящийся в /public_html/joomtest/components/com_jumi/files, который вставлен ниже. У меня есть форма PHP, которая хранится в том же месте, то есть /public_html/joomtest/components/com_jumi/files.
Я хочу, чтобы форма PHP вызывала сценарий PHP, чтобы в Joomla была создана статья. Но всякий раз, когда скрипт PHP вызывается, я получаю сообщение об ошибке ниже
Fatal error: Class 'JTable' not found
и строка, на которой Joomla выдает ошибку
$table = JTable::getInstance('Content', 'JTable', array());
PHP скрипт
<?php
$table = JTable::getInstance('Content', 'JTable', array());
$data = array(
'catid' => 8,
'title' => 'SOME TITLE',
'introtext' => 'SOME TEXT',
'fulltext' => 'SOME TEXT',
'state' => 0,
);
if (!$table->bind($data))
{
$this->setError($table->getError());
return false;
}
if (!$table->check())
{
$this->setError($table->getError());
return false;
}
if (!$table->store())
{
$this->setError($table->getError());
return false;
}
?>
</body>
</html>
Я пытался положить в
require_once('/libraries/joomla/database/table.php');
но это опять не сработало. Пожалуйста помоги.
1 ответ
Решение
Вам необходимо определить путь к файлу таблицы, который вы хотите использовать. Используйте следующий код для включения конкретной таблицы. Например:
JTable::addIncludePath(JPATH_SITE.DS.'components'.DS.'com_content'.DS.'tables');
А затем назовите свой стол как ниже:
$con_table = JTable::getInstance('Content', 'JTable', array());
Надеюсь, это сработает. Удачи.