php - mostrar - graph facebook api page
Subir foto a álbum con Graph API de Facebook (3)
Estoy tratando de familiarizarme con la nueva API Graph de Facebook y hasta ahora puedo buscar y escribir algunos datos con bastante facilidad.
Algo con lo que estoy luchando para encontrar documentación decente es subir imágenes a un álbum.
De acuerdo con http://developers.facebook.com/docs/api#publishing , debe proporcionar el argumento del mensaje . Pero no estoy muy seguro de cómo construirlo.
Los recursos antiguos que he leído son:
Si alguien tiene más información o podría ayudarme a abordar la carga de fotos en un álbum usando Facebook Graph API, responda!
Aquí está el código que funcionó para mí:
//upload photo
$file= ''/path/filename.jpg'';
$args = array(
''message'' => ''Photo from application'',
);
$args[basename($file)] = ''@'' . realpath($file);
$ch = curl_init();
$url = ''http://graph.facebook.com/''.$album_id.''/photos?access_token=''.$access_token;
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HEADER, false);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $args);
$data = curl_exec($ch);
//returns the photo id
print_r(json_decode($data,true));
Enlace a la documentación: http://developers.facebook.com/docs/reference/api/photo
Aquí hay varias formas de subir fotos usando la API PHP Graph de Facebook. Los ejemplos asumen que ha creado una instancia del objeto $ facebook y tiene una sesión válida.
1 - Cargar en el Álbum de aplicaciones predeterminado del usuario actual
Este ejemplo cargará la foto en su álbum de aplicación predeterminado del usuario actual. Si el álbum aún no existe, se creará.
$facebook->setFileUploadSupport(true);
$args = array(''message'' => ''Photo Caption'');
$args[''image''] = ''@'' . realpath($FILE_PATH);
$data = $facebook->api(''/me/photos'', ''post'', $args);
print_r($data);
2 - Subir al álbum de destino
Este ejemplo cargará la foto en un álbum específico.
$facebook->setFileUploadSupport(true);
$args = array(''message'' => ''Photo Caption'');
$args[''image''] = ''@'' . realpath($FILE_PATH);
$data = $facebook->api(''/''. $ALBUM_ID . ''/photos'', ''post'', $args);
print_r($data);
Tienes que hacer algunas cosas para que la API gráfica funcione con php. Este código funciona Observe el archivoUpload => verdadero ...
Además, nunca pude hacer que funcionara con javascript, así que estoy haciendo ajax con esto:
require ''./facebook.php'';
$facebook = new Facebook(array(
''appId'' => ''ID'',
''secret'' => ''SECRET'',
''fileUpload'' => true,
''cookie'' => true // enable optional cookie support
));
$facebook->setFileUploadSupport(true);
# File is relative to the PHP doc
$file = "@".realpath("../../_images/stuff/greatness.jpg");
$args = array(
''message'' => ''Photo Caption'',
"access_token" => "urtoken",
"image" => $file
);
$data = $facebook->api(''/ALBUMID_GOES_HERE/photos'', ''post'', $args);
if ($data) print_r("success");