2012-09-20 3 views
0

저는 라이브 XML 피드에서 스토어 제품 가져 오기 작업을하고 있습니다.보안 XML 피드 가져 오기

이제

나는 하나의 문제는, 다음과 같은 코드로 내가 몇 가지 XML을 가져온이 제외 피드 :

XML Live Feed

코드 나는 모든 피드에 사용됩니다 :

<?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!"; 


} 

?>

그러나 mentoined 피드는 스크립트에서 읽을 수 없습니다, 나는 가져 오기를 만드는 방법을 잘 모릅니다. 이 피드는 브라우저에서 열 수 있으며 모든 사용자가 데이터를 볼 수 있지만 스크립트를 통해 서버로 가져올 수는 없습니다.

도움이 필요하십니까?

답변

0

먼저 XML 피드에 사용자 이름 (tomicurc)과 비밀번호를 게시 하시겠습니까? 둘째, 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"; 
    } 
} 
+0

그 이름처럼 뭔가를 시도하고 통과가 변경 될 것이다, 이것은 단지 데모 XML 피드입니다. 하지만이 XML 파일을이 코드로 읽을 수없는 이유를 이해하지 못합니다. :) – Eager2Learn

+0

그런 다음 어려운 방법을 시도하십시오 : 성공 또는 실패에 대한 모든 작업을 확인하고 어떤 일이 발생하는지 확인하십시오. 이전 코드 블록을 사용하여 응답을 업데이트했습니다. 그런 식으로 시도해보십시오. 그것은 테스트되지 않았지만, 그 라인을 따라 무엇이 일어나고 있는지 더 잘 이해할 수 있습니다. 나는 아직도 file_get_contents를 선호한다 ;-) – EmilioMg