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

Настройка полей формы

Создадим форму и будем на примерах отображать HTML в шаблоне и изменять параметры ее полей.

$fields = [
    ['Ваше имя', 'char', 'name', ['required' => true],
    ['Пол', 'enum', 'gender', ['values_list' => ['Мужской', 'Женский']]],
    ['Email', 'email', 'email'],                
    ['Получать новости', 'bool', 'news_subscribe'],
    ['Дополнительная информация', 'text', 'about', ['help_text' => 'Расскажите о себе']]
];

$form = new Form($fields);

//Вывод всех полей формы, по умолчанию выводится в тэгах div
echo $form -> display();

//Вывод двух полей в тэгах div
echo $form -> display(['name', 'email']);

//Вывод всех полей формы, в виде таблицы
echo $form -> display('*', 'table');

//Вывод всех полей формы (только inputs)
echo $form -> display('*', 'inputs');

//Вывод выборочных полей формы (только inputs)
echo $form -> display(['name', 'about', 'email'], 'inputs');

//Вывод html кода для отдельного поля формы (без названия)
echo $form -> displayFieldHtml('gender');

//Вывод формы с ошибками, прикрепленными к полям
echo $form -> setDisplayWithErrors() -> display();

//Добавить в поля placeholders (названия)
$form -> setNamesAsPlaceholders();
echo $form -> display('*', 'inputs');

Добавление / удаление поля

$form = new Form($fields);

//Операции над полями выполняются до валидации и вывода на экран полей формы
$form -> addField(['Номер телефона', 'phone', 'phone_number']);
$form -> removeField('news_subscribe');

...

$form -> submit() -> validate();

...

echo $form -> display();

Изменение параметров полей

//Сделать поле обязательным для заполнения
$form -> setRequired('about');

//Сделать все поля обязательными для заполнения
$form -> setRequired('*');

//Сделать несколько полей обязательными для заполнения
$form -> setRequiredFields(['email', 'about']);

//Задать название поля
$form -> setCaption('email', 'Электронная почта');

//Задать поясняющий текст к полю
$form -> setHelpText('news_subscribe', 'Рассылка приходит не чаще раза в месяц');

//Задать дополнительные html параметры поля (атрибуты: id, class, title)
$form -> setHtmlParams('about', 'id="about-me" class="text-field" rows="12"');

//Дополнительные html параметры для нескольких полей
$form -> setHtmlParams(['email', 'name'], 'class="text-input"');

//Задать placeholder для поля
$form -> setPlaceholder('email', 'Электронная почта');

Дополнительные возможности

//Если значениями поля типа enum являются данные другой модели
//(внешний ключ), то их можно фильтровать
$form -> filterValuesList('city', ['active' => 1, 'order->asc' => 'name']);

//Для поля типа date можно задавать отображение в виде 3 select тэгов
$form -> setDisplaySelects('date');

//Для поля типа enum можно задать отображение в виде radio кнопок
$form -> setDisplayRadio('gender', 2);

//Для полей типа enum и many_to_many вывести значения в виде таблицы с чекбоксами
//(2 - количество колонок таблицы)
$form -> setDisplayTable('interests', 2);

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

Создание форм

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

Валидация полей формы
MV workshop banner
MV tracker

© 2014-2025, MV framework team

English MV tracker project Github

Поделиться