Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: ranking stron na FB
Forum PHP.pl > Forum > PHP
mb83
Witam
Chciałbym zrobić ranking stron na FB (fanpage o określonej tematyce), która będzie sortowana malejąco za pomocą ilości lajków.

Informacje o FP pobieram z graph.facebook.com:
  1. if(!function_exists("curl_init")) die("cURL nie jest zainstalowany");
  2.  
  3. $url = 'http://graph.facebook.com/jakistamfanpage';
  4.  
  5. $curl = curl_init();
  6. curl_setopt( $curl, CURLOPT_URL, $url );
  7. curl_setopt( $curl, CURLOPT_RETURNTRANSFER, 2 );
  8. $result = curl_exec( $curl );
  9. curl_close( $curl );
  10. $return = json_decode($result, true);
  11. $name = iconv('UTF-8', 'ISO-8859-2', $return['name']);
  12. $likes = $return['likes'];
  13. echo ("$name - lajków $likes");
  14. echo '<pre>';
  15. print_r($return);
  16. echo '</pre>';


Ikonę FP pobieram za pomocą graph.facebook.com/ID FP/jakistamfanpage

i teraz zastanawiam się jak zrobić tablicę (array) aby do niej wrzucić linki danych FP i potem w php wyświetlić takie wyniki jak ilość lajków, ikona, nazwa FP i link do niego.

Dzięki za wyrozumiałość, proszę o sugestię, pomysły :-)
CuteOne
  1. $array = array(
  2. 'http://graph.facebook.com/jakistamfanpage' => array(),
  3. 'http://graph.facebook.com/jakistamfanpage2' => array()
  4. );


a do array() wsadzasz co chcesz
mb83
ok, co oznacza ten błąd:
  1. Notice: Array to string conversion in ...\index.php on line 12


Rozumiem, że trzeba array skonwertować do string tak? jak to zrobić?
pabito
pokaż aktualny kod.

jeżeli zastosowałeś się do porady, to pewnie teraz masz dane w tablicy a przy echo traktujesz ją jak string.
powinieneś wypisać z niej dane przechodząc przez nią pętlą foreach
mb83
ok, a jak do tego kodu włożyć foreach?
pabito
to pokaż co tam masz teraz
mb83
no właśnie za dużo nie mam i w dodatku źle :-(
  1. if(!function_exists("curl_init")) die("cURL nie jest zainstalowany");
  2.  
  3. $url = array(
  4. 'http://graph.facebook.com/jakistamfanpage' => array(),
  5. 'http://graph.facebook.com/jakistamfanpage2' => array()
  6. );
  7.  
  8. $curl = curl_init();
  9. curl_setopt( $curl, CURLOPT_URL, $url );
  10. curl_setopt( $curl, CURLOPT_RETURNTRANSFER, 2 );
  11. $result = curl_exec( $curl );
  12. curl_close( $curl );
  13. $return = json_decode($result, true);
  14. $name = iconv('UTF-8', 'ISO-8859-2', $return['name']);
  15. $likes = $return['likes'];
  16. echo ("$name - lajków $likes");
  17. echo '<pre>';
  18. print_r($return);
  19. echo '</pre>';
CuteOne
  1. foreach ($url as $k => $v) :
  2.  
  3. // twoj kod... tylko tym razem zamiast ładować całą tablicę
  4. // wstaw URL curl_setopt( $curl, CURLOPT_URL, $k);
  5.  
  6. $url[$k] = array(
  7. 'likes' => $return['likes'],
  8. itd..
  9. );
  10. endforeach;
mb83
pewnie źle, ale ten kod wyświetla całą tablicę. jak mam wyświetlić np. tylko nazwę fp i samą ilość lajków?
  1. if(!function_exists("curl_init")) die("cURL nie jest zainstalowany");
  2.  
  3. $url = array(
  4. 'http://graph.facebook.com/fanpage'=>array(),
  5. );
  6. foreach ($url as $k => $v) :
  7. $curl = curl_init();
  8. curl_setopt( $curl, CURLOPT_URL, $k);
  9. $result = curl_exec( $curl );
  10. curl_close( $curl );
  11. $return = json_decode($result, true);
  12.  
  13.  
  14. $url[$k] = array(
  15. 'likes' => $return['likes'],
  16. );
  17. endforeach;
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.