Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/api/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Pivotal Tracker API文件上载_Php_Api_Curl_File Upload_Pivotaltracker - Fatal编程技术网

Php Pivotal Tracker API文件上载

Php Pivotal Tracker API文件上载,php,api,curl,file-upload,pivotaltracker,Php,Api,Curl,File Upload,Pivotaltracker,我有这张表格要上传一个文件。我想把它作为评论上传到Pivotal Tracker的API中。我将在代码中写什么?我是卷发新手 编辑:在Pivotal Tracker中,您可以上传评论中的.jpg、.xls等文件,并创建一个可下载的图标/缩略图 评论文件: 文件附件文件: upload.html: <form action="pt.php" method="post" enctype="multipart/form-data"> <fieldset> <

我有这张表格要上传一个文件。我想把它作为评论上传到Pivotal Tracker的API中。我将在代码中写什么?我是卷发新手


编辑:在Pivotal Tracker中,您可以上传评论中的.jpg、.xls等文件,并创建一个可下载的图标/缩略图

评论文件:

文件附件文件:

upload.html:

<form action="pt.php" method="post" enctype="multipart/form-data">
  <fieldset>
    <input type="file" name="pt_xls" />
    <input type="submit" name="upload" value="Upload" />
  </fieldset>
</form>
$response = pivotalTracker("https://www.pivotaltracker.com/services/v5/projects/XXXXXXXX/stories/XXXXXXXX/comments");

$resArr = array();
$resArr = json_decode($response);

echo "<pre>"; print_r($resArr); echo "</pre>";

function pivotalTracker($url) {


    $pivotalAPIToken = 'XXXXXXXXXX'; 
    $curlHeader = array("X-TrackerToken: ".$pivotalAPIToken, "Content-type: application/json");

    $options = array(
        CURLOPT_HTTPHEADER => $curlHeader,
        CURLOPT_RETURNTRANSFER => true,  
        CURLOPT_POST => TRUE,
        CURLOPT_POSTFIELDS => json_encode($data),
    ); 

    $ch = curl_init($url);
    curl_setopt_array($ch, $options);

    $content  = curl_exec($ch);

    curl_close($ch);

    return $content;
}

pt.php:

<form action="pt.php" method="post" enctype="multipart/form-data">
  <fieldset>
    <input type="file" name="pt_xls" />
    <input type="submit" name="upload" value="Upload" />
  </fieldset>
</form>
$response = pivotalTracker("https://www.pivotaltracker.com/services/v5/projects/XXXXXXXX/stories/XXXXXXXX/comments");

$resArr = array();
$resArr = json_decode($response);

echo "<pre>"; print_r($resArr); echo "</pre>";

function pivotalTracker($url) {


    $pivotalAPIToken = 'XXXXXXXXXX'; 
    $curlHeader = array("X-TrackerToken: ".$pivotalAPIToken, "Content-type: application/json");

    $options = array(
        CURLOPT_HTTPHEADER => $curlHeader,
        CURLOPT_RETURNTRANSFER => true,  
        CURLOPT_POST => TRUE,
        CURLOPT_POSTFIELDS => json_encode($data),
    ); 

    $ch = curl_init($url);
    curl_setopt_array($ch, $options);

    $content  = curl_exec($ch);

    curl_close($ch);

    return $content;
}
$response=pivotalTracker(“https://www.pivotaltracker.com/services/v5/projects/XXXXXXXX/stories/XXXXXXXX/comments");
$resArr=array();
$resArr=json_decode($response);
回声“;印刷费($resArr);回声“;
函数pivotalTracker($url){
$pivotalAPIToken='xxxxxxxxx';
$curlHeader=array(“X-TrackerToken:”.$pivotalAPIToken,“内容类型:application/json”);
$options=array(
CURLOPT_HTTPHEADER=>$curlHeader,
CURLOPT_RETURNTRANSFER=>true,
CURLOPT_POST=>TRUE,
CURLOPT_POSTFIELDS=>json_encode($data),
); 
$ch=curl\u init($url);
curl_setopt_数组($ch$options);
$content=curl\u exec($ch);
卷曲关闭($ch);
返回$content;
}

这可能不是正确的方法,但它确实有效

文件_in.php

$pt_file_id = $_GET['pt_file_id'];
    $pt_file_name = $_GET['filename'];

    $response = pivotalTracker("https://www.pivotaltracker.com/services/v5/projects/*ID*/stories/*ID*/comments", $pt_file_id, $pt_file_name);
    $resArr = array();
    $resArr = json_decode($response);

    echo "<pre>"; print_r($resArr); echo "</pre>";

    function pivotalTracker($url, $pt_file_id, $pt_file_name) {

    $file_data[] = array('id' => $pt_file_id,);
    $fileObject = (object) $file_data;


        $data = array(
            'text'              =>    'file_attachments/'.$pt_file_id.'/'.$pt_file_name,
            'file_attachments'  => $file_data,
        );

        $pivotalAPIToken = 'XXXX';
        $curlHeader = array("X-TrackerToken: ".$pivotalAPIToken, "Content-type: application/json");

        $options = array(
            CURLOPT_HTTPHEADER => $curlHeader,
            CURLOPT_RETURNTRANSFER => true,  
            CURLOPT_POST => TRUE,
            CURLOPT_POSTFIELDS => json_encode($data),
        ); 

        $ch = curl_init($url);
        curl_setopt_array($ch, $options);

        $content  = curl_exec($ch);

        curl_close($ch);
        return $content;
    }
pt\u file\u comment.php

$pt_file_id = $_GET['pt_file_id'];
    $pt_file_name = $_GET['filename'];

    $response = pivotalTracker("https://www.pivotaltracker.com/services/v5/projects/*ID*/stories/*ID*/comments", $pt_file_id, $pt_file_name);
    $resArr = array();
    $resArr = json_decode($response);

    echo "<pre>"; print_r($resArr); echo "</pre>";

    function pivotalTracker($url, $pt_file_id, $pt_file_name) {

    $file_data[] = array('id' => $pt_file_id,);
    $fileObject = (object) $file_data;


        $data = array(
            'text'              =>    'file_attachments/'.$pt_file_id.'/'.$pt_file_name,
            'file_attachments'  => $file_data,
        );

        $pivotalAPIToken = 'XXXX';
        $curlHeader = array("X-TrackerToken: ".$pivotalAPIToken, "Content-type: application/json");

        $options = array(
            CURLOPT_HTTPHEADER => $curlHeader,
            CURLOPT_RETURNTRANSFER => true,  
            CURLOPT_POST => TRUE,
            CURLOPT_POSTFIELDS => json_encode($data),
        ); 

        $ch = curl_init($url);
        curl_setopt_array($ch, $options);

        $content  = curl_exec($ch);

        curl_close($ch);
        return $content;
    }
$pt\u file\u id=$\u GET['pt\u file\u id'];
$pt_file_name=$_GET['filename'];
$response=pivotalTracker(“https://www.pivotaltracker.com/services/v5/projects/*ID*/stories/*ID*/comments“,$pt\u file\u ID,$pt\u file\u name);
$resArr=array();
$resArr=json_decode($response);
回声“;印刷费($resArr);回声“;
函数pivotalTracker($url、$pt\U文件\U id、$pt\U文件\U名称){
$file_data[]=数组('id'=>$pt_file_id,);
$fileObject=(object)$file\u数据;
$data=数组(
'text'=>'file_attachments/'.$pt_file_id./'.$pt_file_name,
“文件附件”=>$file\u数据,
);
$pivotalAPIToken='XXXX';
$curlHeader=array(“X-TrackerToken:”.$pivotalAPIToken,“内容类型:application/json”);
$options=array(
CURLOPT_HTTPHEADER=>$curlHeader,
CURLOPT_RETURNTRANSFER=>true,
CURLOPT_POST=>TRUE,
CURLOPT_POSTFIELDS=>json_encode($data),
); 
$ch=curl\u init($url);
curl_setopt_数组($ch$options);
$content=curl\u exec($ch);
卷曲关闭($ch);
返回$content;
}

这可能不是正确的方法,但它确实有效

文件_in.php

$pt_file_id = $_GET['pt_file_id'];
    $pt_file_name = $_GET['filename'];

    $response = pivotalTracker("https://www.pivotaltracker.com/services/v5/projects/*ID*/stories/*ID*/comments", $pt_file_id, $pt_file_name);
    $resArr = array();
    $resArr = json_decode($response);

    echo "<pre>"; print_r($resArr); echo "</pre>";

    function pivotalTracker($url, $pt_file_id, $pt_file_name) {

    $file_data[] = array('id' => $pt_file_id,);
    $fileObject = (object) $file_data;


        $data = array(
            'text'              =>    'file_attachments/'.$pt_file_id.'/'.$pt_file_name,
            'file_attachments'  => $file_data,
        );

        $pivotalAPIToken = 'XXXX';
        $curlHeader = array("X-TrackerToken: ".$pivotalAPIToken, "Content-type: application/json");

        $options = array(
            CURLOPT_HTTPHEADER => $curlHeader,
            CURLOPT_RETURNTRANSFER => true,  
            CURLOPT_POST => TRUE,
            CURLOPT_POSTFIELDS => json_encode($data),
        ); 

        $ch = curl_init($url);
        curl_setopt_array($ch, $options);

        $content  = curl_exec($ch);

        curl_close($ch);
        return $content;
    }
pt\u file\u comment.php

$pt_file_id = $_GET['pt_file_id'];
    $pt_file_name = $_GET['filename'];

    $response = pivotalTracker("https://www.pivotaltracker.com/services/v5/projects/*ID*/stories/*ID*/comments", $pt_file_id, $pt_file_name);
    $resArr = array();
    $resArr = json_decode($response);

    echo "<pre>"; print_r($resArr); echo "</pre>";

    function pivotalTracker($url, $pt_file_id, $pt_file_name) {

    $file_data[] = array('id' => $pt_file_id,);
    $fileObject = (object) $file_data;


        $data = array(
            'text'              =>    'file_attachments/'.$pt_file_id.'/'.$pt_file_name,
            'file_attachments'  => $file_data,
        );

        $pivotalAPIToken = 'XXXX';
        $curlHeader = array("X-TrackerToken: ".$pivotalAPIToken, "Content-type: application/json");

        $options = array(
            CURLOPT_HTTPHEADER => $curlHeader,
            CURLOPT_RETURNTRANSFER => true,  
            CURLOPT_POST => TRUE,
            CURLOPT_POSTFIELDS => json_encode($data),
        ); 

        $ch = curl_init($url);
        curl_setopt_array($ch, $options);

        $content  = curl_exec($ch);

        curl_close($ch);
        return $content;
    }
$pt\u file\u id=$\u GET['pt\u file\u id'];
$pt_file_name=$_GET['filename'];
$response=pivotalTracker(“https://www.pivotaltracker.com/services/v5/projects/*ID*/stories/*ID*/comments“,$pt\u file\u ID,$pt\u file\u name);
$resArr=array();
$resArr=json_decode($response);
回声“;印刷费($resArr);回声“;
函数pivotalTracker($url、$pt\U文件\U id、$pt\U文件\U名称){
$file_data[]=数组('id'=>$pt_file_id,);
$fileObject=(object)$file\u数据;
$data=数组(
'text'=>'file_attachments/'.$pt_file_id./'.$pt_file_name,
“文件附件”=>$file\u数据,
);
$pivotalAPIToken='XXXX';
$curlHeader=array(“X-TrackerToken:”.$pivotalAPIToken,“内容类型:application/json”);
$options=array(
CURLOPT_HTTPHEADER=>$curlHeader,
CURLOPT_RETURNTRANSFER=>true,
CURLOPT_POST=>TRUE,
CURLOPT_POSTFIELDS=>json_encode($data),
); 
$ch=curl\u init($url);
curl_setopt_数组($ch$options);
$content=curl\u exec($ch);
卷曲关闭($ch);
返回$content;
}

您应该指定所需的注释。文件里有什么东西吗?如果是这样,您将需要一些东西来读取xls文件,因为它是用Microsoft sauce编码的。在Pivotal Tracker中,您可以在注释中上载文件.jpg、.xls等,它会创建一个可下载的图标/缩略图。备注:文件附件:根据您提供的链接,您需要单独上传文件。当你上传一个文件时,你会得到一个附件对象。创建新注释时,需要将该对象附加到要发送的数据。谢谢!如果我把文件上传到服务器上,然后通过Curl发送,然后在服务器上删除它会怎么样。我的脚本中的$data数组是什么样子的?您应该指定您想要的注释。文件里有什么东西吗?如果是这样,您将需要一些东西来读取xls文件,因为它是用Microsoft sauce编码的。在Pivotal Tracker中,您可以在注释中上载文件.jpg、.xls等,它会创建一个可下载的图标/缩略图。备注:文件附件:根据您提供的链接,您需要单独上传文件。当你上传一个文件时,你会得到一个附件对象。创建新注释时,需要将该对象附加到要发送的数据。谢谢!如果我把文件上传到服务器上,然后通过Curl发送,然后在服务器上删除它会怎么样。脚本中的$data数组是什么样子的?