Кнопка «Предыдущий» в HTML / PHP - PullRequest
2 голосов
/ 20 мая 2010

Я часами думал об этой проблеме, но не пришел ни к какому выводу. Моя проблема здесь в том, что мне нужна кнопка «Предыдущий», добавленная в форму. Пользователь должен заполнить формуляр, разделенный на 13 частей. Каждая часть является собственной формулой с кнопкой «Далее» для отправки всего в базу данных и перенаправления на следующую страницу.

Как мне вставить кнопку «Предыдущий»? ...

Не знаю, было бы полезно, если бы вы знали, что я использую cakePHP, и я довольно новичок в этом.

Ответы [ 3 ]

2 голосов
/ 20 мая 2010

Вопрос действительно в том, хотите ли вы сохранить каждый этап формулы в записи? или вы хотите хранить каждый этап формулы в «транзакции»? Разница здесь важна. Каковы ваши отношения с пользователем? Они входят в систему? они анонимны? Как вы связываете их ответы от одной записи формы до следующей? Если вы храните каждую запись в базе данных каким-либо хронологическим образом, то просто заполните предыдущую форму ранее введенными значениями; когда они нажимают предыдущий. Если вы не сохраняете записи и вместо этого используете сеанс для сохранения значений между «следующими» щелчками, заполните эти значения предыдущей формой.

2 голосов
/ 20 мая 2010

Сохраните данные POST каждой формы и текущий индекс формы в своем сеансе. При нажатии кнопки «Назад» откройте форму (currentForm - 1) (если это действительный индекс формы) и заполните поля formData[currentForm] (при условии, что currentForm теперь является формой, на которую кнопка перенаправления перенаправлена)

1 голос
/ 20 мая 2010

Я закодировал похожую форму в классическом ASP, посмотрите, сможете ли вы заставить ее работать в CakePHP:

У меня была 7-ступенчатая форма, у шагов 2-7 есть предыдущие кнопки.Каждый шаг состоит из одного сценария asp.Все сценарии отправляются обратно самим себе.Я проверяю REQUEST_METHOD при каждом вызове скрипта, чтобы увидеть, был ли он вызван методом GET или POST.Если POST, то данные проверяются, если проверяются, то они сохраняются.В формах есть три кнопки отправки, которые позволяют пользователю выбрать, хочет ли он просто сохранить данные, сохранить и перейти к следующему шагу или сохранить и перейти к предыдущему шагу.В зависимости от того, какая кнопка была нажата, пользователь «перенаправляется» на предыдущую / следующую страницу.В этом сообщении указывается, как добавлять и обрабатывать предыдущие / следующие кнопки:

Несколько кнопок отправки - указание кнопки по умолчанию

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...