PHP - Лучшая практика для сохранения значений формы при обратной передаче

Здесь полный новичок в PHP, почти вся моя предыдущая работа была в ASP.NET. Сейчас я работаю над проектом PHP, и первое, на что я наткнулся, - это сохранение значений при обратной передаче.

Для самого простого, но все же реалистичного примера у меня есть 10 раскрывающихся списков. Они еще даже не привязаны к данным, так как это мой следующий шаг. Это простые раскрывающиеся списки.

У меня вся моя страница заключена в тег. событие onclick () для каждого раскрывающегося списка, вызывает функцию javascript, которая заполняет соответствующий скрытый элемент раскрывающегося списка выбранным значением раскрывающегося списка. Затем, при перезагрузке страницы, если это скрытое значение не пусто, я устанавливаю выбранный параметр = тот из моего скрытого.

Это отлично подходит для одиночной обратной передачи. Однако, когда изменяется другое раскрывающееся меню, исходное первое раскрывающееся меню теряет свое значение из-за того, что его коррелирующее скрытое значение также теряет свое значение!

Это побуждает меня изучить использование строки запроса, или сеансов, или ... некоторых другая идея.

Может ли кто-нибудь указать мне в правильном направлении, какой вариант лучше всего в моей ситуации? Я новичок в PHP, однако мне нужно делать некоторые довольно сложные вещи для моего уровня навыков, поэтому мне нужно что-то гибкое и, предпочтительно, несколько простое в использовании.

Спасибо!

----- редактировать -----

Еще немного разъяснений по моему вопросу :)

Когда я говорю «PostBack», я имею в виду отправляемую страницу / форму. Управление передается обратно на сервер, и код HTML / PHP выполняется снова.

Что касается раскрывающихся списков и скрытых элементов, причина, по которой я использовал скрытые переменные для сохранения «выбранного значения» или «выбранного индекса», такова. что при отправке страницы я могу перерисовать раскрывающийся список с предыдущим выбором вместо возврата к первому индексу по умолчанию. Когда я использую команду $ _POST [], я не могу получить раскрывающийся список по имени, но я могу получить скрытое значение по имени. Вот почему при событии изменения раскрывающегося списка я вызываю javascript, который устанавливает выбранное значение из раскрывающегося списка в соответствующее скрытое значение.

-------- редактировать снова -------- )

Когда я говорю «PostBack», я имею в виду отправляемую страницу / форму. Управление передается обратно на сервер, и код HTML / PHP выполняется снова.

Что касается раскрывающихся списков и скрытых элементов, причина, по которой я использовал скрытые переменные для сохранения «выбранного значения» или «выбранного индекса», такова. что при отправке страницы я могу перерисовать раскрывающийся список с предыдущим выбором вместо возврата к первому индексу по умолчанию. Когда я использую команду $ _POST [], я не могу получить раскрывающийся список по имени, но могу получить скрытое значение по имени. Вот почему при событии изменения раскрывающегося списка я вызываю javascript, который устанавливает выбранное значение из раскрывающегося списка в соответствующее скрытое значение.

-------- редактировать снова -------- )

Когда я говорю «PostBack», я имею в виду отправляемую страницу / форму. Управление передается обратно на сервер, и код HTML / PHP выполняется снова.

Что касается раскрывающихся списков и скрытых элементов, причина, по которой я использовал скрытые переменные для сохранения «выбранного значения» или «выбранного индекса», такова. что при отправке страницы я могу перерисовать раскрывающийся список с предыдущим выбором вместо возврата к первому индексу по умолчанию. Когда я использую команду $ _POST [], я не могу получить раскрывающийся список по имени, но могу получить скрытое значение по имени. Вот почему при событии изменения раскрывающегося списка я вызываю javascript, который устанавливает выбранное значение из раскрывающегося списка в соответствующее скрытое значение.

-------- редактировать снова -------- Управление передается обратно на сервер, и код HTML / PHP выполняется снова.

Что касается раскрывающихся списков и скрытых элементов, причина, по которой я использовал скрытые переменные для сохранения «выбранного значения» или «выбранного индекса», такова. что при отправке страницы я могу перерисовать раскрывающийся список с предыдущим выбором вместо возврата к первому индексу по умолчанию. Когда я использую команду $ _POST [], я не могу получить раскрывающийся список по имени, но могу получить скрытое значение по имени. Вот почему при событии изменения раскрывающегося списка я вызываю javascript, который устанавливает выбранное значение из раскрывающегося списка в соответствующее скрытое значение.

-------- редактировать снова -------- Управление передается обратно на сервер, и код HTML / PHP выполняется снова.

Что касается раскрывающихся списков и скрытых элементов, причина, по которой я использовал скрытые переменные для сохранения «выбранного значения» или «выбранного индекса», такова. что при отправке страницы я могу перерисовать раскрывающийся список с предыдущим выбором вместо возврата к первому индексу по умолчанию. Когда я использую команду $ _POST [], я не могу получить раскрывающийся список по имени, но я могу получить скрытое значение по имени. Вот почему при событии изменения раскрывающегося списка я вызываю javascript, который устанавливает выбранное значение из раскрывающегося списка в соответствующее скрытое.

-------- редактировать снова -------- или «выбранный индекс», чтобы при отправке страницы я мог перерисовать раскрывающийся список с предыдущим выбором вместо возврата к первому индексу по умолчанию. Когда я использую команду $ _POST [], я не могу получить раскрывающийся список по имени, но могу получить скрытое значение по имени. Вот почему при событии изменения раскрывающегося списка я вызываю javascript, который устанавливает выбранное значение из раскрывающегося списка в соответствующее скрытое значение.

-------- редактировать снова -------- или «выбранный индекс», чтобы при отправке страницы я мог перерисовать раскрывающийся список с предыдущим выбором вместо возврата к первому индексу по умолчанию. Когда я использую команду $ _POST [], я не могу получить раскрывающийся список по имени, но могу получить скрытое значение по имени. Вот почему при событии изменения раскрывающегося списка я вызываю javascript, который устанавливает выбранное значение из раскрывающегося списка в соответствующее скрытое значение.

-------- редактировать снова -------- Хорошо, хорошо, я вижу, что мне нужно сделать шаг назад и объяснить общую цель :) Я прошу прощения за то, что не очень ясно с самого начала.

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

--------- изменить ---------- Я не могу предоставить внешний доступ к моему примеру, но вот скриншот с пояснением. На изображении ниже пользователь развернет раскрывающийся список "Отдел", чтобы выбрать отдел. На этом этапе приведенные ниже данные о продажах будут обновляться в соответствии с этим отделом. Затем пользователь выбирает параметр «Группировать по», например «Магазин», и страница / данные обновляются для отображения данных, сгруппированных по хранилищу. Затем они могут выбрать цвет, например черный в моем примере, и данные будут отображать продажи для выбранного отдела и цвета, сгруппированные по магазинам.

Однако для того, чтобы сделать все это, на странице необходимо сохранить отдел, цвет , и группировка раскрывающихся списков при каждом обновлении / публикации ...

alt text

6
задан Adam 31 December 2010 в 19:35
поделиться