この方法で php cronjob を使用して、ファン ページの壁に写真をアップロードする必要があります。
http://i48.tinypic.com/kcgwo5.jpg
アクセス許可のあるトークンがあり、いくつかの方法を試しましたが成功しませんでした。
test1.php:
$page_access_token = 'accesstoken';
$page_id = 'idofmyfanpage';
$data['picture'] = 'urlofimage';
$data['access_token'] = $page_access_token;
$post_url = 'https://graph.facebook.com/'.$page_id.'/feed';
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $post_url);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$return = curl_exec($ch);
curl_close($ch);
echo $return;
しかし、結果は...
http://i46.tinypic.com/5l5hfq.png
この灰色の箱…
別の方法を試しました。
test2.php:
$page_access_token = 'accesstoken';
$page_id = 'idofmyfanpage';
$data['image'] = '@imagetoupload.jpg';
$data['access_token'] = $page_access_token;
$post_url = 'https://graph.facebook.com/'.$page_id.'/photos';
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $post_url);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$return = curl_exec($ch);
curl_close($ch);
echo $return;
しかし、私の個人的なプロフィールの壁に写真をアップロードしてください。
ファンページのタイムラインアルバムにもアップしてみました。
http://graph.facebook.com/mypage/albums
{
"data": [
{
"id": "xxxxxxxxxxxxxxxxxxxxxxx",
"from": {
"category": "Community",
"name": "xxxxxxxxxxxxxxx",
"id": "xxxxxxxxxxxxxx"
},
"name": "Timeline Photos",
"link": "http://www.facebook.com/album.php?fbid=xxxxxxxxxxxxxxxx&id=xxxxxxxxx&aid=xxxx",
"cover_photo": "xxxxxxxxxxxxxx",
"count": 1,
"type": "wall",
"created_time": "xxxxxxxxxxxxx",
"updated_time": "xxxxxxxxxxxxx",
"can_upload": false
},
{
"id": "xxxxxxxxxxxxxxxxxx",
"from": {
"category": "Community",
"name": "xxxxxxxxxxx",
"id": "xxxxxxxxxxxxxxx"
},
"name": "Profile Pictures",
"link": "http://www.facebook.com/album.php?fbid=xxxxxxxxxx&id=xxxxxxxxx&aid=xxxxxxx",
"cover_photo": "xxxxxxxxxxxxxxx",
"count": 1,
"type": "profile",
"created_time": "xxxxxxxxxxxxxxx",
"updated_time": "xxxxxxxxxxxxxxx",
"can_upload": false
}
]
}
test3.php
$page_access_token = 'accesstoken';
$page_id = 'idofmyfanpage';
$data['image'] = '@imagetoupload.jpg';
$data['access_token'] = $page_access_token;
$post_url = 'https://graph.facebook.com/idofalbum/photos';
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $post_url);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$return = curl_exec($ch);
curl_close($ch);
echo $return;
結果:
{"error":{"message":"(#120) Invalid album id","type":"OAuthException","code":120}}
どうすればいいですか?
PD: 下手な英語でごめんなさい。