Размещение на стене Facebook из приложения Codeigniter - PullRequest
2 голосов
/ 14 июня 2011

У меня есть приложение на основе CI, которое позволяет пользователям публиковать поток обновлений, похожий на стену Facebook.

В настоящее время пользователи могут проходить аутентификацию в моем приложении через Facebook, используя FB connect.

Iхотел бы предложить возможность пользователю - при публикации на стене моего приложения - также иметь возможность отправлять такое же сообщение на его / ее стену Facebook.

Кажется очевидным, API Graph FB Graph поддерживаю это, но мне трудно найти план / код / ​​библиотеку, чтобы помочь с этим.Пример по приведенной выше ссылке бесполезен и не дает мне никакой идеи, как это реализовать.

Например, как будет выглядеть контроллер для этой функции?

Я нашелБиблиотека Элиота FB CI здесь , но я не уверен, нужно ли это для достижения того, что я хочу.

Любой совет очень ценится - спасибо.

Ответы [ 2 ]

1 голос
/ 19 июня 2011

Я использовал вспомогательную функцию codeigniter с curl для публикации в Facebook.Ниже приведен код.

  function facebook($data) {

    $CI =& get_instance();

    $CI->load->model('fk_model');

    $token = $CI->fk_model->fk_cookie();

    $attachment =  array(
        'access_token'  => $token['access_token'],
        'message'       => $data['text'],
        'link'          => $data['link'],
    );

    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL,'https://graph.facebook.com/' . $token['id'] . '/feed');
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 2);
    curl_setopt($ch, CURLOPT_POST, true);
    curl_setopt($ch, CURLOPT_POSTFIELDS, $attachment);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);  //to suppress the curl output
    $result = curl_exec($ch);
    curl_close($ch);
    }   
1 голос
/ 14 июня 2011

Я бы посоветовал вам использовать Facebook PHP SDK

В вашем контроллере просто включите facebook php sdk, например: https://github.com/facebook/php-sdk/blob/master/examples/example.php

Чтобы сделать запись на стенеследующий код должен сделать трюк:

$wall_post = array('message' => 'this is my message',
                'name' => 'This is my demo Facebook application!',
                'caption' => "Caption of the Post",
                'link' => 'http://mylink.com',
                'description' => 'this is a description',
                'picture' => 'http://mysite.com/pic.gif',
                'actions' => array(array('name' => 'Get Search',
                                  'link' => 'http://www.google.com'))
                );    
$result = $facebook->api('/me/feed/', 'post', $wall_post);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...