Tiffany Israel
Tiffany Israel

Reputation: 470

Get all photos from all albums

I've got this code to get photos from a specific album, however I want to ask for all albums, get their id's and for each id list all the pictures.

<?php 
 require 'facebook/src/facebook.php';
  $appId = '[app_id]';
  $secret = '[app_secret]';
  $access_token = '[access_token]';
  $facebook = new Facebook(array('appId' => $appId, 'secret' => $secret, ));
  $facebook->setAccessToken($access_token);



$albums = $facebook->api('/me/albums?fields=name,count'); 
print_r ($albums);


$album_ID = "309608592385363"; //album ID
$list_pictures = $facebook->api('/'.$album_ID.'/photos', array('access_token' => $access_token));
print_r ($list_pictures);



?>

Bare in mind I removed variable like my app id, etc. They do work each on their own accord, by printing $albums and $list_pictures but I'm trying to bridge the gap between them so that albums tells list pictures each album_id to access. I'm doing this for a client who isn't going to getting into the hand coding.

THANKS!

Upvotes: 3

Views: 6498

Answers (2)

Alexander Nenkov
Alexander Nenkov

Reputation: 2910

  $albums = $facebook->api('/me/albums?fields=id'); 
  $pictures = array();
  foreach ($albums['data'] as $album) {
    $pics = $facebook->api('/'.$album['id'].'/photos?fields=source,picture');
    $pictures[$album['id']] = $pics['data'];
  }

  //display the pictures url
  foreach ($pictures as $album) {
    //Inside each album
    foreach ($album as $image) {
      $output .= $image['source'] . '<br />';
    }
  }
  exit($output);

Upvotes: 8

Michael Pryor
Michael Pryor

Reputation: 25336

Why can't you loop over the $albums array?

pseudocode:

foreach $album in $albums
{
  $list_pictures += $facebook->api(...);
}

Upvotes: 0

Related Questions