Класс '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());

Надеюсь, это сработает. Удачи.

Другие вопросы по тегам