2012-02-20 2 views
0

문제가 있습니다. 내 사이트에 대한 고유 링크에 대한 데이터를 얻으려고합니다.facebook xml에서 데이터 가져 오기

사람들이보고있을 때 : 예 : video.php? id = 23 스크립트가 $_GET['id']을 사용하여 해당 사이트의 데이터를 가져 오도록하고 싶습니다.

내 스크립트는 다음과 같습니다. 모든 것을 시도했습니다. 당신이 나를 도울 수 있기를 바랍니다! 예를 들어 fniis.dk/video.php?id=하지 :

<?php 
$vidurl = $_GET['id']; 
function fb_count() { 
global $fbcount; 
$facebook = file_get_contents('http://api.facebook.com/restserver.php?method=links.getStats&urls=http://www.fniis.dk/video.php?id=$vidurl'); 
$fbbegin = '<share_count>'; $fbend = '</share_count>'; 
$fbpage = $facebook; 
$fbparts = explode($fbbegin,$fbpage); 
$fbpage = $fbparts[1]; 
$fbparts = explode($fbend,$fbpage); 
$fbcount = $fbparts[0]; 
if($fbcount == '') { $fbcount = '0'; } 
} 
fb_count(); 
?> 

문제는 늘 그것은 단지 다음의 링크에서 데이터를 받고 있기 때문에, 그것을 작동하는 것 나던 날은 $ vidurl를 인쇄 할 수 있다는 것입니다 : fniis.dk/video.php?id=123

+1

구체적으로 무엇이 문제입니까? 더 구체적으로 설명 할 수 있습니까? 귀하의 질문은 명확하지 않습니다. – Brad

+0

문제는 다음 링크에서 데이터를 가져 오기 때문에 $ vidurl을 인쇄 할 수 없다는 것입니다. http://www.fniis.dk/video.php?id= –

답변

0

코드에 몇 가지 문제점이 있습니다.

global $vidurl; 

그것은 권장 당신이 매개 변수 fb_count() 대신 global을 사용하는 것과 $vidurl을 통과하는 것이 : 당신이로 지정하지 않는 한 글로벌 fb_count() 내부

먼저, 당신은 fb_count()$vidurl에 액세스 할 수 없습니다 .

두 번째의 경우 $vidurl의 연결이 file_get_contents에 잘못되었습니다. 작은 따옴표 대신 큰 따옴표를 사용해야하므로 $vidurl이 PHP에 의해 처리됩니다. 또한 여기 urlencode()를 사용하는 해치지 않을 것입니다 : 코드가 작동하게한다

// note: using single quotes here and just concatenating with "." 
$facebook = file_get_contents('http://api.facebook.com/restserver.php?method=links.getStats&urls=http://www.fniis.dk/video.php?id=' . urlencode($vidurl)); 

.