Как передать состояние checkbox'ов на другую страницу
Добрый день!
Подскажите пожалуйста, как передать состояние checkbox'ов на другую страницу, файл index.php <!DOCTYPE html> <html> <head> <title></title> <style type="text/css"> span { border : 1px solid; display: inline-block; text-align: center; } form { margin: 5px; } </style> </head> <body> <span> <p>Форма 1</p> <form method="post" action="/obr_1"> <input type="checkbox" name="a1"><label>Вариант 1</label><br/> <input type="checkbox" name="a2"><label>Вариант 2</label><br/> <input type="checkbox" name="a3"><label>Вариант 3</label><br/> <button type="submit">Отправить</button> </form> </span> <span> <p>Форма 2</p> <form method="post" action="/obr_2"> <input type="checkbox" name="b1"><label>Вариант 1</label><br/> <input type="checkbox" name="b2"><label>Вариант 2</label><br/> <input type="checkbox" name="b3"><label>Вариант 3</label><br/> <button type="submit">Отправить</button> </form> </span> <span> <p>Форма 3</p> <form method="post" action="/obr_3"> <input type="checkbox" name="c1"><label>Вариант 1</label><br/> <input type="checkbox" name="c2"><label>Вариант 2</label><br/> <input type="checkbox" name="c3"><label>Вариант 3</label><br/> <button type="submit">Отправить</button> </form> </span> </body> </html> Нужно чтобы пользователь при нажатии на кнопку формы переходил на страничку и видел пункты, которые он выбрал и мог дополнительно выбрать что-то ещё, после ввести имя, телефон, емайл и все эти данные попали в обработчик Схема действия (выбрать пункты на основной странице->Посмотреть что выбрано, выбрать что-то дополнительно, произвести расчет-> Отправить все в обработчик Спасибо! |
Цитата:
|
Является, но здесь взаимодействуют три страницы.
Первая основная, где можно выбрать услуги. Вторая промежуточная, просмотреть услуги которые выбраны, возможность дополнительно отметить ещё услугу если нужно, увидеть цену Третья обработчик, обработать данные полученные со второй страницы, перенаправить на страницу благодарности |
Цитата:
Более того, если уж выбор последовательный, то почему пользователю доступны сразу три формы, не логичнее ли их отдавать в таком случае по одной, по этапам? Вы сами создаете проблемы таким подходом. А "передать на другую состояние предыдущей", это не задача клиента, это должен делать сервер - либо хранить у себя в сессии, либо писать в куки пользователю, на каждом этапе извлекая эти данные и отображая их. |
Сеть отвалилась, хорошо, что закончено получилось. )
В случае же если для сервера выбор флажка только констатация факта (на сервере не предполагается каких либо операций влияющих или определяющих последующие действия), то выбор в каждой из групп можно хранить и локальном хранилище сервера. Выбор в последней группе отправит серверу и предыдущие. Но в таком случае две последние группы изначально должны быть скрыты, открываясь последовательно по мере выбора. Иначе все странно выглядит. |
Цитата:
Первая форма (Бесплатная регистрация ТОО). Вторая форма checkbox'ы (Выбор услуг по отдельности, заказ печати, визы, ходатайства и тд.). Третья форма (Выбор пакета услуг + выбор услуг которые не входят в этот пакет checkbox'ы виза, ходатайство, печать). Для каждой из форм разный обработчик, стоит интеграция с crm системой по api, они попадают в разные воронки продаж и с ними выполняются несвязанные между собой действия, поэтому возможности запихать все это в один обработчик не получится. Поэтому сделано три разных обработчика под три формы. |
Цитата:
Цитата:
Цитата:
Но не понятно, почему сразу три формы вывалены на страницу, а что если я сразу отправлю третью минуя две первых? Нет в этом логики. Ну а передать как уже написано. Если по каким-то причинам это сделать нельзя, передавайте это непосредственно в форме, скрытыми полями, если формы вывалены не все сразу, а появляются по мере выбора, то сделать это совсем не сложно. |
Цитата:
Цитата:
Вот так выглядят формы на главной странице https://drive.google.com/open?id=0Bw...k1sNWNHV1RYX1U |
Если "Дальше", значит сначала первая, затем вторая и только потом третья, но никак не все сразу, не так ли?
Я не знаю как взаимодействуют между собой эти страницы, если поле обработки какой-то формы сервер перенаправляет на следующую страницу или страницу "источник", то header('utl?'.http_build_query($form)); принять, отобразить и поместить для "сохранения" если требуется в скрытых полях следующей формы. Если каждый обработчик отдает следующую форму, то тем более нет проблем отобразить выбранное и скрытыми полями добавить в форму. |
Часовой пояс GMT +3, время: 19:28. |