PHP отправляет форму и возвращает результат xml

#php

#php

Вопрос:

У меня есть форма, которая отправляется на внешний URL, и URL возвращает результат xml, независимо от того, прошло ли действие хорошо или нет. Я хочу, чтобы форма была опубликована, а результат xml возвращался, чтобы пользователь мог видеть результат xml вместо внешнего URL, открываемого в пустом окне без какого-либо форматирования.

Я не уверен, как это сделать.

Комментарии:

1. вы хотите изменить стиль внешнего XML-файла?

Ответ №1:

Вместо того, чтобы отправлять форму непосредственно во внешний скрипт, вам нужно будет обернуть ее в свой собственный PHP-код, чтобы иметь возможность доставлять XML обратно вашему пользователю для просмотра.

Для этого вы можете:

  1. Отправьте форму самой себе, а не напрямую на внешний ресурс
  2. Захват $_POST
  3. Передайте его в запрос cURL, который отправляет во внешнюю форму
  4. Извлеките выходные данные из запроса cURL и отобразите их для своего пользователя, завернув, <pre></pre> чтобы сохранить форматирование XML.

Однако обратите внимание, что некоторые веб-браузеры будут корректно отображать возвращенный XML в том виде, в каком он уже есть, при условии, что сервер, отправляющий его, правильно идентифицирует его как XML. Однако у вас нет контроля над этим ни на внешнем сервере, ни на ваших клиентах конечного пользователя.

Комментарии:

1. Привет, Майкл, спасибо за пошаговое руководство процессом. Именно то, что мне нужно, чтобы найти правильный метод. Я попробую! 🙂

2. Не могли бы вы привести пример того, какой должна быть настройка cURL, мой первый раз с cURl.

3. Нет необходимости, найдено решение. Еще раз спасибо!