| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > PHP: Общие вопросы > передача значений в форму |
| Автор: ovxxx 29.6.2005, 09:48 | ||
| Есть форма добавления анкеты для знакомств. Допустим не заполнили все обязательные поля. Скрипт это видит и запускает опять ту же форму с предупреждением о незаполненных полях. Но вот как сделать, чтобы те поля, которые пользователь все таки заполнил, во вновь загруженной форме оказались не пустыми, а сохранили предыдущие значения? Я попробовал сделать так:
Но если полей много, то код становится нечитабельным не только для дизайнера но и для программиста. Да и к тому же форма начинает в браузере выводиться не вся а частями. Можно ли сделать все это как то поизящнее? Чтобы скрипт был более понятным и надежным. |
| Автор: z-END 29.6.2005, 09:58 | ||
проверяем параметры если все гуд то ok==true
тогда, если были не введены все данные, то введенные будут оставться. |
| Автор: skalex 29.6.2005, 10:26 | ||
Не забываем, что если данные приходят методом POST, то их надо дергать из глобального массива $_POST. При настройке PHP register_globals off приведенные выше пример не заработает ...
Добавлено @ 10:32 ovxxx, имхо изящнее всего - написать класс для создания форм, который будет заниматься отрисовкой полей, клиентской и серверной валидацией и прочими вещами. Можно попробовать использовать готовые библиотеки (см. http://forum.vingrad.ru/index.php?showtopic=54923). |
| Автор: Bikutoru 29.6.2005, 12:14 |
| Еще можно шаблон формы создать, его парсить и вставлять нужные значения полям Mace, если написать класс, то дизайнеру там точно делать будет нечего |
| Автор: skalex 29.6.2005, 12:51 | ||
Как это нечего ? В моем понимании такой класс не должен отрисовать форму полностью (уже готовой к выводу), а должен лишь предоставлять по требованию HTML-код открытия/закрытия формы и ее полей . Ну или что то в этом роде ... А верстальщик (не дизайнер) пусть компонует и оформляет это на странице. |
| Автор: Bikutoru 29.6.2005, 13:18 | ||||
Но в любом случае потребуются шаблоны, содержащие что-то вроде
что не намного проще, чем
Хотя, конечно, дизайн при таком раскладе менять будет проще, если это потребуется... |
| Автор: skalex 29.6.2005, 13:21 | ||
Неее ... Ну что-нить типа этого:
|
| Автор: Bikutoru 29.6.2005, 14:12 | ||
Но ведь для
может потребоваться задание стилей, здесь тоже потребуются свои шаблоны... Или ты хочешь это делать при помощи класса? |
| Автор: skalex 29.6.2005, 14:44 | ||||
Ну тут все зависит от того шаблонного движка, под который все это затачивать. Если делать не под шаблонный движок, а под обычный HTML, то в почему бы не передавать это методу в качестве параметра ?
|
| Автор: Bikutoru 29.6.2005, 15:25 | ||
Но ведь тогда мы переносим часть дизайна в скрипт, который должен бы отвечать за логику работы приложения... По-моему, при этом теряется смысл шаблонного движка... |
| Автор: skalex 29.6.2005, 15:57 |
| Да там не скрипт в принципе, я просто написал как это может выглядеть в обычном HTML-шаблоне (без всяких движков). Но сама то форма создается в другом месте, там где ты описываешь логику. А вызовы тех методов - это уже часть отображения. Потому как он возвращает готовый HTML-код поля с подстановкой всех необходимых аттрибутов. В общем по разному тут можно судить. Я писал такой класс, и для меня он очень удобен. |
| Автор: Bikutoru 29.6.2005, 17:01 | ||
Соглашусь, это и есть главный критерий |