Выдели фрагмент текста с ошибкой или неточностью и нажми Ctrl+Enter!
Выдели фрагмент текста с ошибкой или неточностью и нажми Ctrl+Enter!
Из всего разнообразия методов класса JDatabase самым основным является query(). Он выполняет запросы напрямую в базу данных, без дополнительных вмешательств со стороны Joomla.
Обычная функция PHP mysql_query обычно вернет ссылку на ресурс, который потом с помощью нескольких действий можно преобразовать в нормальный ответ в виде ассоциативного массива. Метод query(), в отличие от функций PHP, вернет булево значение, по которому можно понять выполнился запрос или нет. Обычно его используют в следующих типах запросов:
Хотя никто не запрещает писать там что-нибудь и посложнее. Разберем выше сказанное на практике. Попробуем к примеру выполнить запрос, который удаляет из таблицы «#__mycomponent_foobars» все записи, где ordering больше 4.
Так, как в случае неудачи мы получим FALSE, то после проверки запроса можно сделать вывод ошибок, например в log-файл.
Очень полезным может оказаться метод JDatabase::getAffectedRows(), который вернет количество строк, к которым был применен последний запрос. Используется следующим образом: