Оптимизация разработки форм

#optimization #automation #repeat

#оптимизация #автоматизация #повторение

Вопрос:

Как и многие веб-разработчики, я постоянно создаю формы. Я обнаружил, что все время делаю то же самое: размещаю поля ввода, присваиваю каждому имя, создаю форму ajax, затем создаю php, который включает в себя назначение переменной $ php для каждого $ _REQUEST [‘var’], экранирование и проверку данных, создание html и отправку результатов по электронной почте…

Итак, я нахожу, что 70% работы я повторяю, но я просто не могу дублировать страницу и изменять поля. В итоге я трачу больше времени на переформатирование, удаление и добавление разных полей, чем на создание с нуля.

Я начал планировать программирование конвертера «список идентификаторов в html php», в который я бы ввел все идентификаторы, и это вывело бы базовый html и php. Тогда я подумал: должны быть тысячи разработчиков, которые проходят через это, я бы заново изобрел колесо. Итак, это мой вопрос, я пытаюсь найти то колесо, которое кто-то, должно быть, уже изобрел.

Я нашел это: http://www.trirand.com/blog/jqform / который делает более или менее то, что я ищу, но это дорогое решение, и у него слишком много функциональности для того, что я бы использовал.

Какие инструменты вы используете для оптимизации повторяющихся задач в html и php?

Ответ №1:

Создание форм с использованием простого HTML является громоздким и трудоемким. Задача будет намного проще, если вы используете библиотеку форм с открытым исходным кодом. Я широко использую Zend_Forms. Вы также можете изучить тот, который предоставляется EZ Components

Эти библиотеки форм позволяют вам указывать различные элементы формы, средства проверки для каждого элемента и фильтры данных (строковые теги, нижний регистр и т. Д.). После того, как вы указали их, библиотека автоматически обрабатывает рендеринг форм, а в дальнейшем, если есть ошибки, она также отображает ошибки. Обычно эти библиотеки отображают формы с определенной предопределенной разметкой (HTML), но она также настраивается.

Если вы начнете использовать одну из этих библиотек, вы сэкономите много времени при создании форм. На самом деле я бы посоветовал вам использовать фреймворк, такой как Zend или Symfony, для ваших проектов.

Комментарии:

1. эти формы предназначены для веб-сайта небольшой компании, такого, который содержит около 5/6 html и небольшую контактную форму … внедрение фреймворка было бы бессмысленным

2. @Juan: Компоненты Zend можно использовать независимо от фреймворка.

3. почти все формы, которые я хочу оптимизировать, находятся в .htmls