在php上接收HTTP Post数据

时间:2016-09-30 18:45:35

标签: php c++ wininet

好的晚上好

我在从C ++程序的http请求中收到数据时遇到了问题

我使用Wininet

InternetOpenA()
InternetConnect()
HttpOpenRequest()
HttpSendRequest()

现在好消息是它将程序发送到php文件,现在不用担心所有工作都很好

当我执行这样的代码来获取POST数据时

<?php
$data = file_get_contents(php://input);
$fp = fopen("log.txt","a+");
fwrite($fp,$data);
fclose($fp);
?>

它获取数据并保存到文本文件。但是,当我做以下

<?php
$data = urldecode($_POST['info']);
$fp = fopen("log.txt","a+");
fwrite($fp,$data);
fclose($fp);
?>

它只是创建了log.txt并且不会保存其中的任何数据。开始认为这是一个php问题,但我尝试过的每件事都失败了......可能出错了什么?

2 个答案:

答案 0 :(得分:0)

根据经验,fopen给我带来了很多错误,它并不总是与某些方面有关。 创建一个mysql数据库并将日志数据保存在那里,你可以用你的C ++程序创建一个页面/连接它来获取日志。

答案 1 :(得分:0)

如果您从Bar获取数据,但Parent为空,则您的POST数据为{strong>非,格式为php://input。如果PHP无法找到任何$_POST数据,则无法为您构建key=value。 $ _POST是一个像任何其他数组一样的数组,所有进入它的数据必须都有一个键。没有键,没有数组输入。