0

一部のデータをcsvとしてエクスポートし、jQueryajaxフォーム送信でトリガーします。私はそれの基本を機能させることができます、私が得ることができないように見えるのは、それが書かれた後にファイルを強制的にダウンロードすることです。PHP

<?php
session_start();
echo $_SESSION['payerEmail'];
echo $_SESSION['password']; 
$url = 'http://www.ninjatrader-support2.com/sugar/FXCMLicense.php';
$FXCMAction = $_REQUEST["FXCMAction"];
$payerEmail = $_SESSION['payerEmail'];
$password = $_SESSION['password'];
$fields = array(
'FXCMAction'=>urlencode($FXCMAction),
'payerEmail'=>urldecode($payerEmail),
'password'=>urldecode($password)
);
foreach($fields as $key=>$value) { $fields_string .= $key.'='.$value.'&'; }
$fields_string = rtrim($fields_string,'& ');

$ch = curl_init($url);
session_write_close();
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $fields_string);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$output = curl_exec($ch);
$directory='/home/ninja002/public_html/FXCMReports/';
$filename = 'XCMLicense.csv';
$handle = fopen($directory.$filename, 'w');
fwrite($handle, $output);
echo $output;
curl_close($ch);

?>

いつものように、どんなアドバイスも大歓迎です。TY。

4

1 に答える 1

0

これが誰かが私に与えた頭痛を救うことができることを願っています. これを行う方法は次のとおりです(少なくとも私の場合):

<?php
    session_start();
    $url = 'http://www.remotesite/script.php';
    $Foo = $_REQUEST["Foo"];
    $Bar = $_SESSION['Bar'];
    $password = $_SESSION['password'];
    $fields = array(
        'Foo'=>urlencode($Foo),
        'Bar'=>urldecode($Bar),
        'password'=>urldecode($password)
    );
    foreach($fields as $key=>$value) { $fields_string .= $key.'='.$value.'&'; }
    $fields_string = rtrim($fields_string,'& ');
    $ch = curl_init($url);
    session_write_close();
    curl_setopt($ch, CURLOPT_HEADER, 0);
    curl_setopt($ch, CURLOPT_POST, 1);
    curl_setopt($ch, CURLOPT_POSTFIELDS, $fields_string);
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    $output = curl_exec($ch);
    curl_close($ch);
    $directory='/home/usr/public_html/Directory/';
    $filename = 'AwesomeData.csv';
    $handle = fopen($directory.$filename, 'w');
    fwrite($handle, $output);
    header('Content-type: application/octet-stream');
    header('Content-Disposition: attachment; filename="AwesomeData.csv"');
    echo $output;
?>
于 2012-12-13T02:34:06.943 に答える