首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我试图对formstack进行php Curl调用,但一无所获

我试图对formstack进行php Curl调用,但一无所获
EN

Stack Overflow用户
提问于 2012-10-26 10:47:29
回答 2查看 1.2K关注 0票数 0

这是我的第一批卷发代码之一,所以它可能会出错。

我正在尝试调用表单/:id/submissions GET

如果我加载:

time=2012-10-27%2000:01:01

如果效果不错的话。

如果我尝试这个代码:

代码语言:javascript
复制
 <?php    
 $host = 'https://www.formstack.com/api/v2/';

  // TODO this should manage dinamics values or build an action in every method. 
  $action = 'form/1311091/submission.json';

  $url = $host . $action;

  // TODO this values will arrive like an array with values
    $postData['oauth_token']= 'abc';
    $postData['min_time'] ='2012-09-01 00:01:01';
    $postData['max_time'] ='2012-10-27 00:01:01';

// TODO make a method with this action
function getElements($postData)
{

    $elements = array();  
    foreach ($postData as $name=>$value) {  
       $elements[] = "{$name}=".urlencode($value);  
    } 
}


  $curl = curl_init();
  curl_setopt($curl, CURLOPT_URL, $url);
  curl_setopt($curl, CURLOPT_HTTPGET, true);
  curl_setopt($curl, CURLOPT_POSTFIELDS, $elements);
  $result =  curl_exec($curl) ;
  curl_close($curl);
  var_dump($result);
?>
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-10-26 10:50:41

你需要设置:

代码语言:javascript
复制
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);

如果您希望获得数据,请在curl_exec()之前选择。

CURLOPT_RETURNTRANSFER:将传输作为curl_exec()返回值的字符串返回,而不是直接输出。

另外,为什么要通过GET请求发送POST数据?

CURLOPT_POSTFIELDS:在HTTP操作中发布的完整数据。

此外,对于调试,您应该签出:

代码语言:javascript
复制
echo curl_error ( $curl );
票数 2
EN

Stack Overflow用户

发布于 2012-10-26 14:46:43

这对我来说很管用:

代码语言:javascript
复制
<?php
$host = 'https://www.formstack.com/api/v2/';
$action = 'form/1311091/submission.json';

$url = $host . $action;

$postData = array();
$postData['oauth_token']= 'REPLACE_WITH_TOKEN';
$postData['min_time'] ='2012-09-01 00:01:01';
$postData['max_time'] ='2012-10-27 00:01:01';

$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, $postData);
$result =  curl_exec($curl);
curl_close($curl);

var_dump($result);
?>
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13085453

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档