带数据文件的POST请求

时间:2013-03-11 12:32:12

标签: php file post text

我需要使用来自文件的数据向外部源发出POST请求,所以我尝试合并我看到的这两个解决方案,但我似乎无法使它们工作,你能帮我吗?

// Submit those variables to the server
$post_data = array(
    'test' => 'foobar',
    'okay' => 'yes',
    'number' => 2
);

// Send a request to example.com 
$result = post_request('http://www.example.com/', $post_data);

if ($result['status'] == 'ok'){

    // Print headers 
    echo $result['header']; 

    echo '<hr />';

    // print the result of the whole request:
    echo $result['content'];

}
else {
    echo 'A error occured: ' . $result['error']; 
}

在array()中我正在放

$trimmed = file('somefile.txt', FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES);

所以最后我得到了这样的东西

<?php
    $post_data = array($trimmed = file('somefile.txt', FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES);


    $result = post_request('http://www.example.com/', $post_data);

    if ($result['status'] == 'ok'){


        echo $result['header']; 

        echo '<hr />';


        echo $result['content'];

    }
    else {
        echo 'A error occured: ' . $result['error']; 
    }
?>
编辑:如果我不清楚我需要什么,我很抱歉。实际上我偶然找到了一个和我一样需要的人stackoverflow.com/questions/46582/response-redirect-with-post-instead-of-get虽然我想用php做这件事。

基本上我被要求在一个网站内快速制作一个表格,用户在该网站上写下一些保存在.txt中的凭据,并且该数据用于通过POST登录到联盟外部网站。这使用户能够从第一个网站登录联盟网站,而无需点击新链接。

1 个答案:

答案 0 :(得分:0)

代码的第一行存在问题。此外,第一个代码段中的数据属性也丢失了。您也可以添加它们。

$post_data = array($trimmed = file('somefile.txt', FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES);

替换为

$post_data = array(
    'trimmed' => file('somefile.txt', FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES)
);

See the official documentation for declaring arrays in PHP

如果您需要文件中的数据,您可能需要将其解析为数组,然后将其发布到网址。如果是这种情况,你能发布txt文件的格式吗?