Как отправить параметры в скрипт PHP из VBA - PullRequest
0 голосов
/ 02 апреля 2020

Мне нужно отправить запрос POST из сценария MS Access VBA в удаленный сценарий PHP, чтобы вернуть данные базы данных. Скрипт VBA работает нормально, но я не могу отправить обязательный параметр.

VBA

Set oXHTTP = CreateObject("MSXML2.ServerXMLHTTP.6.0")
oXHTTP.Open "POST", URL, False
oXHTTP.setRequestHeader "Content-Type", "application/json"
oXHTTP.send "getorglist=true"
doCURL = oXHTTP.responseText

PHP

if(filter_has_var(INPUT_POST, 'getorglist'))   {
  echo json_encode(getOrgList($pdo));       
  return;
}

Скрипт VBA работает, возвращает 200 ответ, но пустые данные. Если я удаляю все, кроме средней строки сценария PHP, возвращается правильный код JSON.

Что необходимо изменить?

1 Ответ

0 голосов
/ 06 апреля 2020

После некоторых онлайн-поисков и экспериментов я обнаружил, что решение состоит в том, чтобы заменить строку 3 в коде VBA (строка setRequestHeader) на:

oXHTTP.setRequestHeader "Content-Type", "application/x-www-form-urlencoded"

Это работает, но я не могу понятно почему, что вызывает беспокойство. Может кто-нибудь посоветовать?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...