使用cURL发送POST请求-空数组

3

我正在尝试使用cURL发送POST请求,但不幸的是我只收到了一个空字符串。

cURL:

<?php
echo "ID: " . $_POST["id"]; // here ID is not empty

$fields = array(
    'id' => urlencode($_POST["id"]),
    'name' => urlencode($_POST["name"])
);

$connection = curl_init();
curl_setopt($connection, CURLOPT_URL, "http://www.example.de/remote.php");
curl_setopt ($connection, CURLOPT_POST, true);
curl_setopt($connection, CURLOPT_POSTFIELDS, count($fields));
curl_setopt($connection, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($connection, CURLOPT_HEADER, 0);
$response = curl_exec($connection);
?>

远程服务器:

<?php
   var_dump($_POST); // shows an empty array
?>

2
你正在将字段的数量 count($fields) 发送到 CURLOPT_POSTFIELDS 而不是实际的字段,这是有意为之吗? - pjumble
1个回答

4
你需要删除count($fields),改用$fields
curl_setopt($connection, CURLOPT_POSTFIELDS, $fields);

您实际上没有设置cURL选项以发送字段


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接