Лучший способ сделать страницу подтверждения? - PullRequest
2 голосов
/ 25 февраля 2011

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

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

  1. иметь мою форму POST для скрипта, который собирает данные, вставляет GET и перенаправляет на страницу подтверждения, которая демарширует и отображает данные в другой форме, гдепользователь может затем подтвердить (что вызывает другой сценарий POST для сценария, который фактически сохраняет данные) или отклонить (что приводит к перенаправлению пользователя обратно в исходную форму с добавленным вводом)?

  2. Моя форма POST непосредственно на странице подтверждения, которая отображается для пользователя, а затем, как # 1, дает пользователю возможность подтвердить или отклонить?

  3. Естьмоя форма ПОЛУЧИТЕ страницу подтверждения, которая затем соответствует ожидаемому поведению?

Я чувствую, что есть здравый смысл ответа на этот вопрос, который я просто не получаю.

Ответы [ 3 ]

2 голосов
/ 25 февраля 2011

Если вы должны сделать это (я бы сделал это только для вещей, связанных с денежными транзакциями или тому подобным, лично), я бы порекомендовал 2 ресурса / URI, оба из которых следуют шаблону Post-Redirect-Get: POST начальная проверка корзины, создание состояния «отложенный ордер» (или аналогичный), перенаправление на страницу для этого состояния. Затем пользователь может отправить POST с этой страницы на следующий URI, чтобы создать «подтвержденный заказ» (или аналогичный), который перенаправляет на страницу квитанции или что-либо еще.

2 голосов
/ 25 февраля 2011

То, что я делал в прошлом, - это одна страница с областью «Просмотр» с метками, а затем область «Редактирование» с текстовыми полями / выпадающими списками / и т. Д.Вы можете сделать их DIV или TABLES в зависимости от ваших предпочтений.

  1. Пользователь заходит на страницу и получает представление редактирования, чтобы они могли использовать текстовые поля.Кнопка «Сохранить / отправить» внизу.
  2. Нажатие кнопки «Сохранить / Отправить» выполняет обратную передачу, заполняет метки введенными данными и позволяет им просматривать / проверять введенные данные.Кнопки «Продолжить» и «Редактировать» внизу.
  3. Редактировать - это обратный запрос и вернуться к представлению редактирования.
  4. «Продолжить» выполняет фактическое сохранение и перенаправление на новую страницу, на которой отображается подтверждение.

При желании вы можете снова сохранить данные на странице подтверждения вместо первой, в зависимости от ваших предпочтений.

0 голосов
/ 25 февраля 2011

На самом деле, вы можете сделать это до отправки. В форме отправки (где бы это ни было) добавьте onlick, который запускает модальное окно с кнопкой подтверждения. Мой личный фаворит в этой ситуации - использовать диалог модального подтверждения Jquery UI .

Я лично запускаю это с помощью оператора Jquery .click на странице.

Таким образом, документ не будет отправлен до тех пор, пока зависимость onclick не будет завершена и не будет изменена на «true», что в примере выполняется автоматически с включенной кнопкой «ok».

Я полагаю, что это изящно отступит, чтобы просто не требовать подтверждения, если Javascript выключен, что само по себе становится все более и более "крайним" случаем. Фактически, некоторые из моих самых стойких корпоративных клиентов начинают принимать ограничения, такие как этот случай, когда Javascript выключен .... и они намного более придирчивы, чем когда-либо будет большинство из нас.

Тогда вы можете отправить на любую страницу, какую захотите. Лично я переключил все свои формы на отправку Jaquery .ajax, но это только я. Вы можете делать это как хотите.

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