안녕하세요 생존본능입니다.

 Facebook을 내용은 안쓰고 자꾸 땃짓만 하게 되네요.ㅠ 

 Facebook에서는 정보를 주소에 지정하여 아래와 값이 값을 전달하여 줍니다.

 http://~~~~~~~~~~~~~~~~~~~

 라는 주소롤 이동하면 아래와같은 정보가 출력되게 됩니다.
 

{
   "id": "220439",
   "name": "Bret Taylor",
   "first_name": "Bret",
   "last_name": "Taylor",
   "link": "http://www.facebook.com/btaylor",
   "username": "btaylor",
   "gender": "male",
   "locale": "en_US"
}

 

 친구들이나 기본 정보값을 말이죠.

 하지만 위 정보를 이용하고 싶다고 Json으로 그냥 주소 값을 읽으면

 Json은 주소안에있는 정보를 읽는것이 아니라 "http://~~" 라는 주소를 읽게 될것입니다.



 그래서 이때 필요한것이  ' file_get_contents ' 같은 함수를 사용하여야 합니다.

 사용법은 참 쉽습니다.

 


$url = '주소';
echo file_get_contents($url);
 

 

 위와같이 주소만 지정해 주면 아무할일이 없습니다.

 하지만...저는 이렇게 쉽게가면 안된다고 오류를 발생시켜주시네요..

 file_get_contents() [function.file-get-contents]: URL file-access is disabled in the server configuration in /home/hosting_users/mbs723/www/game/numberNumber/index.php on line 65



 허울...이건 먼말이여 file_get_contents()가 비활성화 됐다고?

 음음...맨날 오류없이 한번에 넘어가는 적이 없네요.ㅠ

 이럴경우에는 file_get_contents() 함수를 서버쪽에서 열어주지 않아서 발생하게됩니다.

 보통 
file_get_contents()은 url뿐만 아니라 파일 읽기도 가능하기때문에 닫아놓지 않았나 싶은데요

 그럴때는 curl을 사용하면 됩니다.

 사용법은 아래처럼 사용하면 됩니다.
  

$url = 'https://graph.facebook.com/btaylor';

$ch = curl_init();


curl_setopt($ch, CURLOPT_URL, $url);

curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout);

$g = curl_exec($ch);

curl_close($ch);

echo $g;


 그러면 화면에 정상적으로 출력되시는 것을 확인할수있습니다.

 하지만 매번 이런식으로 쓰면 귀찮겠죠?

 그래서 함수를 만들었습니다.

 

 

 위 파일을 받으신후 사용할 위치에 위치시키시면 됩니다.

  저같은 경우에는 같은위치에 위치시키겠습니다.

 
 이후에 아래 코드를 추가해주시면 됩니다.

 

include_once 'Curl.php';

$url = 'https://graph.facebook.com/btaylor';


echo curl($url);

 
 그냥 include_once이후 curl 함수만 호출하면 정상적으로 출력되는것을 확인할수있습니다.

 

 


 이후 Json를 사용하여 값을 object로 만들어주면 끝나게 됩니다.~

 여기까지 읽어주셔서 감사합니다.^^ 
  1. name 2011.07.12 11:25 신고

    좋은 정보 감사합니다 나머지 자료는 전부 따라 실행이 가능했는데
    오류부분은 없는거 같은데 이번꺼만은 아무것도 출력되질 않습니다.

    • 생존본능 2011.07.17 02:31 신고

      위내용은 Facebook 내용인 아닌 PHP 내용입니다.
      그리고 출력되지 않으시면 출력하는 url에 값이 정상적으로 있는지 확인먼저 해보시고, 그래도 안되시면 메일로보내주시면 같이 확인해드리겠습니다.^^

  2. 김세엽 2011.08.17 16:09 신고

    Curl.php에서 curl_init()메소드 호출부분좀 공개해주실수있나요 초보라 ㅜ_ㅜ

    • 생존본능 2011.08.17 23:36 신고

      다운받아서 그냥 열어보시면 됩니다.^^;
      내용도 같이 남겨드립니다.
      <?php
      function curl($url)
      {
      $ch = curl_init();

      curl_setopt($ch, CURLOPT_URL, $url);
      curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
      curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
      $g = curl_exec($ch);
      curl_close($ch);
      return $g;
      }
      ?>

  3. =a =;; 2012.05.10 18:57 신고

    트위터 follower, follow 를 들고 왔는데
    왜 100개만 들고 오는걸까요? =ㅁ =;

  4. 지나가던중 2013.08.01 16:44 신고

    감사합니다.
    복 받으실거에요.

  5. 지나가던 2013.08.10 01:33 신고

    감사합니다 많은 도움이 되었습니다!

  6. 감사합니다 2014.04.23 16:18 신고

    감사합니다!!!!

+ Recent posts

티스토리 툴바