0

ライブ XML フィードからストア製品をインポートする作業を行っています。

次のコードでは、これを除いていくつかの XML フィードをインポートしました。

XML ライブ フィード

すべてのフィードに使用したコードは次のとおりです。

<?php

//dropshipper のフィード URL $myFeed = 'http://feedurl/feed.xml';

// 保存したいファイル名を指定 $myFilename = 'some_feed.xml';

if ($myFeed != '') {
//  Initialize the cURL session
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $myFeed);
//Create a new file
$fp = fopen($myFilename, 'w');
// Save to file
curl_setopt($ch, CURLOPT_FILE, $fp);
// Execute the cURL session
curl_exec ($ch);
//Close cURL session and file
curl_close ($ch);
fclose($fp);

echo "Some Feed Imported Successfully!";


} 

?>

しかし、メンターされたフィードはスクリプトから読み取ることができず、インポートの作成方法がわかりません。このフィードはブラウザーで開くことができ、誰もがデータを見ることができますが、スクリプトを介してサーバーにインポートすることはできません。

何か助けてください。

4

1 に答える 1

0

まず、ユーザー名 (tomicurc) とパスワードを XML フィードに投稿してもよろしいですか? 次に、file_get_contents を試しましたか? それは私にとってはうまくいき、保存できるリモートデータを取得する簡単な方法です。

編集:

次のようなものを試してください

if ($myFeed != '') {
    if($ch = curl_init()) {
        if(curl_setopt($ch, CURLOPT_URL, $myFeed)) {
            if($fp = fopen($myFilename, 'w')) {
                if(curl_setopt($ch, CURLOPT_FILE, $fp)) {
                    if(curl_exec ($ch)) {
                        curl_close ($ch);
                        fclose($fp);
                        echo "close completed, finishing";
                    } else {
                        echo "curl_exec failed";
                    }
                } else {
                    echo "curl_setopt CURLOPT_FILE failed";
                }
            } else {
                echo "fopen failed";
            }
        } else {
            echo "curl_setopt CURLOPT_URL failed";
        }
    } else {
        echo "curl init failed";
    }
}
于 2012-09-20T22:35:25.127 に答える