MV framework logo
  • Архитектура
  • Философия
  • Админ панель
  • Поддержка
  • Обратная связь
Документация
Скачать .zip версия 3.2.0 от 25.12.2024
  • Архитектура
  • Философия
  • Админ панель
  • Поддержка
  • Обратная связь
Начало работы
  • Установка и запуск
  • Структура папок
  • Запуск простого сайта
  • Предустановленные модели
  • SQLite начало работы
  • Системные настройки
  • Миграции
  • Отладка
Модели
  • Общие принципы моделей
  • Типы данных
  • Настройка модели
  • Простые модели
  • Внешние ключи
  • Деревья
  • Многие ко многим
  • Группа
  • Управление записями
  • Управление простыми моделями
  • Дополнительные возможности
Шаблоны и маршрутизация
  • Общие принципы шаблонов
  • Объект класса Router
  • Объект MV
  • Создание нового шаблона
  • Вывод данных в шаблоне
  • Объект класса Record
  • Файлы и изображения
  • Дата и время
  • Редиректы и Http
  • Отправка email
  • Специальные методы
Формы
  • Создание форм
  • Настройка полей формы
  • Валидация полей формы
  • Безопасность форм
  • Работа с данными формы
  • Использование данных из моделей
  • Методы форм
SQL запросы
  • Конструктор запросов
  • Прямые запросы
  • Постраничная разбивка
  • Сортировка
  • Фильтрация
Дополнительно
  • AJAX
  • Плагины
  • Кэширование
  • Безопасность
  • Дополнения к административной панели
Документация
Начало работы
  • Установка и запуск
  • Структура папок
  • Запуск простого сайта
  • Предустановленные модели
  • SQLite начало работы
  • Системные настройки
  • Миграции
  • Отладка
Модели
  • Общие принципы моделей
  • Типы данных
  • Настройка модели
  • Простые модели
  • Внешние ключи
  • Деревья
  • Многие ко многим
  • Группа
  • Управление записями
  • Управление простыми моделями
  • Дополнительные возможности
Шаблоны и маршрутизация
  • Общие принципы шаблонов
  • Объект класса Router
  • Объект MV
  • Создание нового шаблона
  • Вывод данных в шаблоне
  • Объект класса Record
  • Файлы и изображения
  • Дата и время
  • Редиректы и Http
  • Отправка email
  • Специальные методы
Формы
  • Создание форм
  • Настройка полей формы
  • Валидация полей формы
  • Безопасность форм
  • Работа с данными формы
  • Использование данных из моделей
  • Методы форм
SQL запросы
  • Конструктор запросов
  • Прямые запросы
  • Постраничная разбивка
  • Сортировка
  • Фильтрация
Дополнительно
  • AJAX
  • Плагины
  • Кэширование
  • Безопасность
  • Дополнения к административной панели
MV tracker

Прямые запросы

Все модели содержат объект класса Database, который позволяет делать прямые SQL запросы в базу данных. Данный объект доступен внутри объекта модели как свойство $this -> db. Таблица модели доступна внутри класса модели в виде свойства $this -> table. Для построения безопасных SQL запросов используется метод secure(), описанный в разделе Безопасность.

Существуют следующие методы для отправки прямых запросов:

query() - исполняет полученный SQL запрос

//Все опубликованные записи текущей таблицы
$result = $this -> db -> query("SELECT *
                                FROM `'.$this -> table.'` 
                                WHERE `public`='1'
                                ORDER BY `date` DESC");

while($row = $this -> db -> fetch($result, 'ASSOC'))
{
   ...
}

getAll() - извлекает все записи и возвращает ассоциированный массив если в таблице есть поле 'id', то данное поле станет ключом в результирующем массиве.

//Все опубликованные комментарии к новости с id=32
$rows = $this -> db -> getAll("SELECT `name`,`date`,`content`
                               FROM `news_comments`
                               WHERE `news_id`='32'
                               AND `public`='1'
                               ORDER BY `date` DESC");

foreach($rows as $row)
{
   ...
}

getCount() - подсчет количества записей в таблице, возвращает целое число

//Общее количество статей
$total = $this -> db -> getCount('articles');

//Количество активных товаров раздела
$total = $this -> db -> getCount('products', "`catalog`='98' AND `active`='1'");

getRow() - извлекает строку из таблицы, возвращает ассоциированный массив полей

//Все поля товара с id=527
$row = $this -> db -> getRow("SELECT * FROM `products` WHERE `id`='527'");

getColumn() - извлекает колонку из таблицы, возвращает массив

//Заголовки всех событий за конкретную дату
$titles = $this -> db -> getColunm("SELECT `title` FROM `events` WHERE `date`='2011-03-24'");

getCell() - извлекает ячейку из таблицы

//Возвращает цену товара c названием 'New product' 
$price = $this -> db -> getCell("SELECT `price` FROM `products` WHERE `name`='New product'");

Предыдущий раздел

Конструктор запросов

Следующий раздел

Постраничная разбивка
MV workshop banner
MV tracker

© 2014-2025, MV framework team

English MV tracker project Github

Поделиться