У меня есть форма в файле ASP, которую я хотел бы передать в php-скрипт для обработки. Это возможно? Я не понимаю, почему этого не может быть, но я попробовал фиктивную форму в файле asp с действием = "phptest.php" и при отправке просто перезагружает страницу формы.
Передача данных формы из файла asp в php
Ответы (5)
Данные, передаваемые вашему PHP-скрипту, будут поступать из HTML-формы. То, что форма была создана с помощью ASP-скрипта, не имеет значения, пока выходные данные вашего ASP-скрипта представляют собой обычную HTML-форму.
То, что отправка вашей формы перезагружает страницу, предполагает, что HTML для формы не соответствует вашим потребностям.
Вы имеете дело с умеренно сложным сценарием, и для определения причины проблемы вам нужно разбить все на более простые компоненты и протестировать/исследовать их по отдельности.
Позволять:
- [A] = сценарий ASP
- [B] = HTML-форма
- [C] = PHP-скрипт
Насколько я понимаю сценарий:
- [А] порождает [Б]
- [B] отправляет данные на [C]
Это говорит о следующих общих проблемах:
- [A] неправильно генерирует [B] (ваш ASP выводит неправильный HTML)
- [C] неправильно обрабатывает входящие данные формы (логическая ошибка в вашем PHP-скрипте)
Работайте в обратном направлении от своей конечной цели (это правильная обработка данных вашим PHP-скриптом). Проверяйте каждый шаг на этом пути и убедитесь, что он действительно таков, как вам нужно.
- Просмотрите свой PHP-код. Убедитесь, что на данный момент это выглядит правильно. Обратите внимание на URL-адрес PHP-скрипта.
- Вручную создайте HTML-форму. Задайте для атрибута формы
action
URL-адрес PHP-скрипта. Теперь форма будет отправлять данные в ваш PHP-скрипт. Проверьте, что скрипт PHP делает то, что должен. Пока вы не заработаете, вы не сможете продолжать. - Сделайте так, чтобы ваш ASP-скрипт выдавал точно такой же HTML-код, который вы создали вручную.
До тех пор, пока вы можете получить HTML-форму, отправляющую данные в ваш PHP-скрипт, и пока ваш PHP-скрипт правильно обрабатывает входящие данные, вы можете продолжить работу, а затем получить форму, сгенерированную ASP.
Это определенно должно сработать. Вы уверены, что кнопка формы ‹input type="submit"›?
Вы уверены, что phptest.php находится в правильном каталоге?
Что произойдет, если вы перейдете напрямую по URL-адресу phptest.php?
Можете ли вы обновить свой вопрос, по крайней мере, HTML для тегов ‹form› и тегов ‹input›?
Вы поместили действие в тег submit или в тег form?
вы можете разместить код здесь?
Я бы рекомендовал JSON пройти как «стандартный» (http://ar.php.net/json_decode)
Во-первых, это ASP.Net или классический ASP? если это ASP.Net, вам нужно удалить runat=server из тега формы. Кроме того, вам нужно будет использовать теги HTML вместо тегов формы ASP.Net... например: INPUT вместо ASP: TEXTBOX и т. д.