![]() |
[HTML Forms]Формы и метод GET
возможно это давно всем известно, но я первый раз с этим сталкиваюсь:
Если в форме используем метод GET для передачи данных, то параметры GET URL-a скрипта-получателя (то есть то, что в action стоит) просто стераются Пример: HTML код:
<form action='script.php?modus=save_message' method='GET'> С POST всё в порядке. Я не понимаю логику за этим: нельзя дальнейшии GET переменные на URL навешeвать? Или может браузер глупый (IE7) Или я чего то не понимаю..... |
vadimiron
а зачем так сложно? почему нельзя использовать просто hidden-поля? |
У меня этот метод работал. Может стоит попробовать принять переменную как $_GET['modus'] ?
|
Coutty
Я так и принимаю и никак по другому XCodeR Приходиться так и делать, я просто хочу понять логику, что мешает браузеру в запрос просто навесить дополнительные переменные Почему я так делаю: у приложения модульная структура, то есть переменная $modus отвечает за то, какой скрипт загрузиться Чтобы не прописывать всё время руками УРЛ с соответствующим модулем я в управляющем скрипте создаю константу MAIN_URL и применяю её везде Кстати такой же эффект, если я ничего в action не напишу При ПОСТе переменные передаются, при ГЕТе нет |
vadimiron, а в иных броузерах нормально все?
Кстати, может поглядеть в иные суперглобалы, вроде _REQUEST? |
Prisoner
в FireFox тоже не работает. REQUEST тоже нет - это же всего соединение двух массивов Код для проверки: PHP код:
Может что то связанное с безопастностью..... :wacko: |
vadimiron, объединение, верно, однако самому проверить так ли это в этой ситуации (привычка верить во всякие глупости :)) в тот момент у меня не было возможности, потому и спросил. Ну да ладно. У меня тоже не работает :). Сейчас проверил во всех броузерах что под рукой были - одно поведение: удаление переменной из action. Остается только объяснить это поведение и смириться, задействовав hidden поля. Объяснение же может быть следующим (лень копать соответствующие RFC) т.к. метод у нас GET, то ПА генерирует состояние формы в тот же поток где у нас стоит наше "modus=save_message" затирая все то, что там было до нас. POST же так не поступает посколько состояние формы идет иным потоком. Как итог - юзать hidden поля и мириться с двойными (_GET и _POST, из action и hidden полей, соответственно) переменными.
|
Время: 06:00. |
Время: 06:00.
© OSzone.net 2001-