-1

次のコードに関するガイダンスを探しています。次の形式の大きな CSV ファイルが多数あります。

firstname,lastname,address,state,zip,email,homephone,dob,optindate,ipaddress,url
Joey,Demo,4004 S. Louise Ave. 206,Sioux Falls,SD,57106,jdemo@hotmail.com,6053231657,06/18/1944,4/19/2008 11:58:34,12.174.252.216,http://www.ecoupons.com

いくつかの新しい変数を追加し、データを http_build_query に変換し、各行を POST で URL に送信しようとしています。

これが私のコードです

$processid = '123454r4rt5rt5rtr';
$version = '1.0.0';
$partnercode = 'ABC';
$listid = 'ID12345';

$fp= fopen("test.csv", "r");

while (!feof($fp) ) {
     list($firstname,$lastname,$address,$city,$state,$zip,$email,$phone,$dob,$optindate,$ipaddress,$url) = fgetcsv($fp);
$data = array('firstname' => $firstname,
'lastname' => $lastname,
'address' => $address,

'city' => $city,
'state' => $state,
'zip' => $zip,
'email' => $email,
'homephone' => $phone,
'dob' => $dob,
'optindate' => $optindate,
'ipaddress' => $ipaddress,

    'url' => $url,
    'processid' => $partnercode,
    'version' => $version,
    'partnercode' => $partnercode,
    'listid' => $listid);

    );

    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, 'https://localhost.com');
    curl_setopt($ch, CURLOPT_POST, 1);

curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_BASIC);
curl_setopt(CURLOPT_USERPWD, 'usernameassword')

$data = curl_exec($ch);

curl_close($ch);

現在テストしていると、予期しない T_VARIABLE が発生し続けますが、コーディングが正しいと 100% 確信できるわけではありません。

前もって感謝します。

4

3 に答える 3

1

curl_setopt(CURLOPT_USERPWD, 'usernameassword')curl_setopt(CURLOPT_USERPWD, 'usernameassword');最後にセミコロンを付ける必要があります。

于 2012-05-07T11:16:54.630 に答える
0

を含む行でセミコロンを省略したようです

curl_setopt(CURLOPT_USERPWD, 'usernameassword')

コードの次の行は変数の定義ですが、前の行が終了していないため、PHP インタープリターは予期しない変数 - に遭遇します$data

ここに質問を投稿する前に、セミコロンを追加し、構文エラーを修正してください。エラーには、エラーが発生した行番号が含まれている可能性があります。

この種のエラーに対処するときは、エラーの周囲のコードも常に確認する必要があります。エラーが根本的な原因である可能性があります。

于 2012-05-07T11:17:18.123 に答える
0

CSV ファイルには 11 列しか含まれていませんが、PHP コードでは 12 列が必要です (city列が欠落しているようです)。

それが理由かもしれません。

于 2012-05-07T11:20:31.160 に答える