" Теперь я хочу добавить этот параметр в список существующих параметров или отредактировать его, если он уже есть "
Я бы пошел с parse_str () / parse_url () работает для разделения URL на ассоциативный массив, затем вы можете добавить / обновить элемент массива с вашим новым значением и объединить его обратно в действительный URL с помощью http_build_url ().Пожалуйста, взгляните на примеры в руководстве по php, проще написать код, чем написать об этом;)
", затем обновить страницу "
ответы о скрытых элементах формы неплохие, но мне интересно, поймет ли пользователь, что происходит (у него не будет видимого подтверждения того, что его предыдущий выбор запомнен, но вы каким-то образом его сохраните).Из-за этого я бы пошел по другому пути: предполагая, что формы генерируются с помощью php и не являются статическим HTML, почему бы вам просто не убедиться, что параметры, выбранные в первой отправке формы, выделены при отображении формы дляпоследующие представления?
<select name="b">
<option value="1" <?php if(isset($params['b']) && $params['b'] == 1) echo 'selected="selected"'; ?>>1</option>
</select>
Это выглядит немного грязно, но если вы захотите повторно отображать вводимые пользователем данные, вы сохраните их, набрав текст (они будут ненавидеть вашу страницу, если им придется заполнять пустую страницу).формируется 3 раза из-за некоторой проверки).
Для тегов параметров правильный атрибут «выбран», для флажков / переключателей он «отмечен», текстовые входы имеют атрибут «значение», в который можно вводить все, что вы хотитеи т.д. Не уверен, что я не говорю о чем-то очевидном для вас ...