Что не так с этим кодом PHP для отправки данных POST через поток? - PullRequest
0 голосов
/ 21 октября 2010

Я пытаюсь использовать PHP-скрипт для входа на другой веб-сайт (в данном случае - установку Moodle), отправив сообщение на страницу входа.

Этот код, кажется, частично работает. Проблема в том, что только первый параметр распознается принимающей стороной. Для кода, показанного ниже, распознается только параметр 'username'. Однако если вы поменяете порядок «username» и «password» так, чтобы «пароль» был указан первым, то только «пароль» распознается с помощью $ _POST ['password'].

$postdata = http_build_query(
    array(
        'username' => $currentUser,      
        'password' => $userPassword,      
    )
);
$opts = array('http' =>
    array(
        'method'  => 'POST',
        'header'  => 'Content-type: application/x-www-form-urlencoded',
        'content' => $postdata
    )
);
$context  = stream_context_create($opts);
$result = file_get_contents($loginURL, false, $context);

Есть идеи, почему распознается только первый параметр?

1 Ответ

0 голосов
/ 21 октября 2010

Хорошо, теперь я вижу, что код правильный и что что-то внешнее мешает запросу POST.Этот код запускался внутри Drupal, поэтому я думаю, что это как-то связано с ним.Когда я сохраняю это отдельно как файл .php, он работает как положено.

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