安全的XML Feed导入

时间:2012-09-20 22:24:00

标签: php xml curl import xml-parsing

我正在从实时XML Feed导入商店产品。

现在我遇到了一个问题,下面的代码我导入了几个XML feed,除了这个:

XML Live Feed

我用于所有Feed的代码是:

<?php

// dropshipper的供稿网址 $ 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!";


} 

&GT;

但是,无法从脚本中读取精神上的Feed,我也不知道如何创建导入。此源可以在浏览器中打开,每个人都可以看到数据,但无法通过脚本在服务器上导入。

请帮忙吗?

1 个答案:

答案 0 :(得分:0)

首先,您确定将您的用户名(tomicurc)和密码发布到XML-Feed是一个好主意吗? 其次,你试过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";
    }
}