Передача данных формы из файла asp в php

У меня есть форма в файле ASP, которую я хотел бы передать в php-скрипт для обработки. Это возможно? Я не понимаю, почему этого не может быть, но я попробовал фиктивную форму в файле asp с действием = "phptest.php" и при отправке просто перезагружает страницу формы.


person Brian Griffin    schedule 06.01.2009    source источник
comment
Можем ли мы получить фактический код фиктивной формы, которую вы использовали?   -  person Salty    schedule 06.01.2009


Ответы (5)


Данные, передаваемые вашему PHP-скрипту, будут поступать из HTML-формы. То, что форма была создана с помощью ASP-скрипта, не имеет значения, пока выходные данные вашего ASP-скрипта представляют собой обычную HTML-форму.

То, что отправка вашей формы перезагружает страницу, предполагает, что HTML для формы не соответствует вашим потребностям.

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

Позволять:

  • [A] = сценарий ASP
  • [B] = HTML-форма
  • [C] = PHP-скрипт

Насколько я понимаю сценарий:

  • [А] порождает [Б]
  • [B] отправляет данные на [C]

Это говорит о следующих общих проблемах:

  • [A] неправильно генерирует [B] (ваш ASP выводит неправильный HTML)
  • [C] неправильно обрабатывает входящие данные формы (логическая ошибка в вашем PHP-скрипте)

Работайте в обратном направлении от своей конечной цели (это правильная обработка данных вашим PHP-скриптом). Проверяйте каждый шаг на этом пути и убедитесь, что он действительно таков, как вам нужно.

  1. Просмотрите свой PHP-код. Убедитесь, что на данный момент это выглядит правильно. Обратите внимание на URL-адрес PHP-скрипта.
  2. Вручную создайте HTML-форму. Задайте для атрибута формы action URL-адрес PHP-скрипта. Теперь форма будет отправлять данные в ваш PHP-скрипт. Проверьте, что скрипт PHP делает то, что должен. Пока вы не заработаете, вы не сможете продолжать.
  3. Сделайте так, чтобы ваш ASP-скрипт выдавал точно такой же HTML-код, который вы создали вручную.

До тех пор, пока вы можете получить HTML-форму, отправляющую данные в ваш PHP-скрипт, и пока ваш PHP-скрипт правильно обрабатывает входящие данные, вы можете продолжить работу, а затем получить форму, сгенерированную ASP.

person Jon Cram    schedule 06.01.2009

Это определенно должно сработать. Вы уверены, что кнопка формы ‹input type="submit"›?

Вы уверены, что phptest.php находится в правильном каталоге?

Что произойдет, если вы перейдете напрямую по URL-адресу phptest.php?

Можете ли вы обновить свой вопрос, по крайней мере, HTML для тегов ‹form› и тегов ‹input›?

person dj_segfault    schedule 06.01.2009

Вы поместили действие в тег submit или в тег form?

person publicRavi    schedule 06.01.2009

вы можете разместить код здесь?

Я бы рекомендовал JSON пройти как «стандартный» (http://ar.php.net/json_decode)

person Gabriel Sosa    schedule 06.01.2009

Во-первых, это ASP.Net или классический ASP? если это ASP.Net, вам нужно удалить runat=server из тега формы. Кроме того, вам нужно будет использовать теги HTML вместо тегов формы ASP.Net... например: INPUT вместо ASP: TEXTBOX и т. д.

person Tracker1    schedule 06.01.2009