Ошибка HTTP POST без имени файла

1

У меня есть форма, использующая метод POST для отправки данных. Назначение POST настроено как "http://www.example.com/form". Однако фактический файл POST "http://www.example.com/form/index.php".

Поскольку действие не включает имя файла (index.php), переменные POST не попадают на страницу. (Это говорит, что запросы GET работают нормально.)

За исключением изменения действия и/или метода, есть ли какое-либо исправление для этого? Могу ли я реализовать правило mod_rewrite для передачи значений POST на странице?

  • 0
    Вы пытались использовать плагин Firefox, такой как данные взлома или httpfox, чтобы посмотреть на запрос? Вы только что попробовали var_dump ($ _ POST), даже полностью удалив действие в форме, если форма находится на странице index.php
  • 0
    Я попытался var_dump ($ _ POST) безрезультатно - он вернулся пустым. Кроме того, у меня есть форма на странице, отличной от страницы index.php назначения POST.
Теги:

1 ответ

2
Лучший ответ

Я не мог воспроизвести это с помощью

<form action="/test/" method="POST">

Но я смог воспроизвести его с помощью

<form action="/test" method="POST">

Во втором случае мой Apache отправляет как Перемещенный-Постоянно перенаправляет на /test/ и переменные POST теряются.

Это перенаправление выполняется с помощью mod_dir. Если вы отключите ссылки mod_dir к каталогу без завершающего косая черта, вы просто не работаете.

Единственный совет, который я могу вам дать, - это исправить действие формы.

  • 0
    Если присмотреться к коду, ваш сценарий 2 - это то, что я вижу с моей стороны, а не сценарий 1.
  • 0
    Спасибо за предложение. У меня нет доступа к форме, но я собираюсь сообщить команде, которая управляет ею, что я ничего не могу сделать с моей стороны. Я предложил, чтобы они изменили метод на GET, так как это тоже работает.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню