Доброе время суток. Есть такая задача - реализация функции назад(редактирование). То есть в начале добавляются объявления и после осуществляется переход на другую страницу. На странице, на которую мы только что перешли присутствует кнопка назад(или редактирование - думаю это одно и тоже). вопрос - как осуществляется весь этот механизм возврата к объявлению для редактирования? вариант просто вернуться назад через js не подходит - сбиваются все настройки js. то есть селекты перестают работать - проверки так же отказываются работать. есть кое какие мысли - не уверен что они верны: 1. При добавлении объявления - ставится флаг (обозначает темповость объявления). 2. При заходе на страницу добавления объявления проверять этот самый флаг в базе. 3. Получается - выбираем собственно данные и расставляем их по своим местам(местами используя js). Может быть кто нибудь объяснит как правильно? Буду при многом благодарен любым идеям.
использую на работе такой вариант: 1. форма редактирования, значения (приходящие или по умолчанию) в которой динамически выставляются с помощью js 2. после заполнения формы происходит переход на следующую форму с кнопками НАЗАД - ВПЕРЁД 3. при нажатии НАЗАД js изменяет action формы на предыдущую страницу и постит данные 4. страница формы считывает приходящие постом данные и генерирует js код, заполняющий форму и обратно к пункту 1 данный подход позволяет не задействовать базу данных или сессию, однако требует наличия js.
суть ясна. а если такой вариант - нужно проверить данные на сервере перед отправкой на форму с кнопками назад-вперед? то есть между заполненной формой и формой с кнопками назад/вперед - есть еще проверка на сервере. то есть был сабмит и произошла проверка на серваке с выдачей ошибок если таковы имеются. как быть в этом случае не подскажите?
так и быть.генераторы форм обёрнуты в виде функций, так что просто вызвать функцию. пример: адрес начальной формы - index.php, функция генерации страницы - form_new($params) адрес следующей формы - continue.php, функци генерации страницы - form_continue($params) index.php вызывает функцию form_new, передавая массив значений для заполнения формы. значения задаются из поста, если был пост, или берутся по умолчанию continue.php проверяет корректность введённых данных, и, если что-либо некорректно, вызывает функцию form_new($params) передавая полученные данные. если всё корректно - вызывается функция form_continue($params) всё это делалось на другой платформе, но суть та же. для пхп можно упрость подход: при проверке continue.php проверять корректность введённых данных, если данные некорретны - инклудить index.php и вызывать exit. если данные корректны - продолжить обработку.