Http-запрос режет данные после знака амперсанда & amp;

Я сделал HTTP-запрос из приложения C ++ с использованием wininet, и он успешно работает для отправки данных в файл php с помощью следующих функций winapi

InternetOpen()
InternetConnect()
HttpOpebnRequest()
HttpSendRequest()

Теперь он отправляет данные в файл php, хорошо и хорошо, но не отправляет все параметры

например у меня есть этот параметр

username=jade101&password=svetlana123&submit=yes

Он просто отправляет только username=jade101 и выбрасывает остальное.

PHP, который я использовал, чтобы получить данные выглядит следующим образом

<?php
$data = $_GET['info'];
$fp = fopen('logga.txt','a+');
fwrite($fp, $data);
fclose($fp);

?>

Что я не получаю правильно?

0

Решение

Прежде всего, я пишу на CPP и хорошо разбираюсь в PHP, и я могу сказать, что, глядя на ограниченный код, это использование $ _GET.

Как вы отправляете данные в файл php? Вызывает ли сам скрипт PHP, добавляя строку

«Имя пользователя = jade101&пароль = Svetlana123&представить = да»

к этому?

В любом случае, $ _GET должен будет захватывать каждую переменную отдельно. Что-то вроде:

$uname = $_GET['username'];
$upass = $_GET['password'];
$sflag = $_GET['submit'];

Вы также можете попробовать:

$data = $_SERVER["REQUEST_URI"];

Для захвата полного URI, начиная с имени скрипта, и проанализируйте строку, как вам нравится позже.

Я не понимаю, почему проблема существует в коде C ++, если только буферы отправки не использовались неправильно, но эта реализация не видна в этом коде.

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]