PHP függvény, hogy Facebook állapot?

szavazat
9

Keresem a jó, egyszerű PHP függvény, hogy a legújabb Facebook állapotáról. Bárki, aki tud egyet?

Kösz!

EDIT: Adtam egy fél-megoldást az alábbiakban.

Vagy ha valaki tudja egy jó módja, hogy olvassa el a RSS feed, és kiköp a legutóbbi állapot frissítés?

A kérdést 20/12/2008 22:44
a forrás felhasználó
Más nyelveken...                            


10 válasz

szavazat
6

Egy gyors ellenőrzés a PEAR talált Services_Facebook

Válaszolt 20/12/2008 22:53
a forrás felhasználó

szavazat
1

Soha nem úgy tűnik, hogy együtt körte, de ha van jobb szerencsét, mint én, akkor a PEAR megoldás tűnik a legjobb útvonalat hosszú távon.

Egy másik ötlet, hogy vizsgálja meg a Facebook fejlesztői API könyvtár és nézd meg, hogy esetleg kapsz semmit, amit keres.

Végül ott szokott lenni egy módja annak, hogy egy RSS feed ... de nem úgy tűnik, hogy megtalálja minden utasítást, hogy a munka már, de lehet, hogy piszkálni körül Facebook segítségével, ha ez érdekli. Mine végül ehhez hasonló:

http://www.new.facebook.com/feeds/status.php?id=[idnumber]&viewer=[viewer]&key=[key]&format=rss20

Válaszolt 20/12/2008 23:09
a forrás felhasználó

szavazat
3

Ez egy befejezetlen válasz, de ez az, amit eddig kapott:

Először is: add a fejlesztő alkalmazás FB . Ezután hozzon létre egy új alkalmazás. Hívjon, amit csak akarsz.

Másodszor: le a PHP kliens. Dump valahol tárhelyszolgáltatójánál, azaz / facebook /

Harmadszor: Másolja a következő kezdő kódot belekezdenie egy php file:

 <?php
 require_once('facebook/php/facebook.php');
 $facebook = new Facebook("YOUR_API_KEY","YOUR_SECRET_KEY");
 $result = $facebook->api_client->fql_query("SELECT status FROM user WHERE uid = YOURIDNUMBER");
 // OR --- they both get the same data
 $result = $facebook->api_client->users_getInfo(YOURIDNUMBER,'status');
 print_r($result);
 echo "<pre>Debug:" . print_r($facebook,true) . "</pre>"; // debug info
 ?>

Más információ:

  • Meg kell jelentkezned, és az alkalmazás hozzá. VAGY adsz az alkalmazás offline_access engedélyeket, és a aapplication hozzá.
  • Felveheti offline_access beírja a következő URL-t: http://www.facebook.com/authorize.php?api_key=YOUR_API_KEY&v=1.0&ext_perm=offline_access
  • További információk a jogosultságokat itt található: http://wiki.developers.facebook.com/index.php/Extended_permissions
  • Én egy megállási pontot: semmit a programot felhívja a FqL lekérdezés vagy users_getInfo, oldalam megáll végrehajtó a php? Gondolom van egy korlátozott mennyiségű felhívások új alkalmazások? Még soha nem csináltam semmilyen FB fejlesztés úgyhogy teljesen új hozzá. Talán, hogy a hívást, és mentse a legutóbbi állapot (vagy a legutóbbi státuszok) a saját DB hogy megakadályozzák a túlzott hívások az API?

Remélem, ez segít, hogy valaki az induláshoz!

EDIT: Úgy tűnik, hogy FB nem engedi hozzáférni valakinek állapot, akkor is, ha a offline_access van, kivéve, ha Ön az a személy vagy barát (attól függően, hogy az adatvédelmi beállításokat).

Én azonban végül sikerült megtalálni a RSS feed az új profil verzió: http://www.new.facebook.com/minifeed.php?filter=11

Válaszolt 21/12/2008 10:03
a forrás felhasználó

szavazat
0

Mivel nem tudtam használni az API útvonalon mentem az RSS található meg: http://www.new.facebook.com/minifeed.php?filter=11

És használta a következő PHP függvény, az úgynevezett StatusPress , néhány saját módosításokat, elemezni a RSS feed a Facebook állapotát. Jól működik!

Válaszolt 04/01/2009 20:35
a forrás felhasználó

szavazat
0
<?php
// see http://github.com/facebook/php-sdk/blob/master/facebook.php
require './facebook.php';
// Create our Application instance.
// see http://www.youtube.com/watch?v=jYqx-RtmkeU for how to get these numbers
$facebook = new Facebook(array('appId' => 'XXX','secret' => 'XXX'));
// This call will always work since we are fetching public data.
// this could be /username or /username/friends etc...
// see developer api for FQL for examples
$status = $facebook->api('/haanmc/feed?limit=1');
?>
<p><?php print $status['data'][0]['message']; ?></p>
<p>Likes: <?php print $status['data'][0]['likes']; ?> | Comments: <?php print count($status['data'][0]['comments']['data']); ?></p>
<textarea style="width: 95%; height: 600px;"><?php print_r($status); ?></textarea>
Válaszolt 23/04/2010 16:29
a forrás felhasználó

szavazat
2

Találtam egy módja annak, hogy letölti a legújabb Facebook állapotát. Így csináld:

1) hozzon létre egy Facebook alkalmazás , és másolja az alkalmazás titkos és az alkalmazás id.

2) Grant az alkalmazás read_stream és offline_access a profiljába. ( Http://developers.facebook.com/docs/authentication/permissions ) letölti a legújabb állapotát az alkalmazás szüksége access_token. A offline_access megadta a access_token kell „soha” lejár. A legegyszerűbb módja ennek az, hogy a gombra kattintva által generált kód: (biztos, hogy töltse ki a „az alkalmazás id” és állítsa cookie igaz!)

<fb:login-button perms="read_stream,offline_access"></fb:login-button>
<div id="fb-root"></div>
<script src="http://connect.facebook.net/en_US/all.js"></script>
<script>FB.init({appId: 'your app id', status: true, cookie: true, xfbml: true});</script>

3) Most megpróbálják kideríteni, mi access_token fogunk használni. A access_token menti a fbs_appId süti. Keresse meg a böngésző vagy a $_COOKIE['fbs_appId']. Keresse access_token=....

4) Most, hogy van egy (remélhetőleg) soha lejáró access_token akkor a következő kódot:

$access_token='xxxxxxxxxxxxxxxxxxxx';
$appId='123456789132456789';
$appSecret='xxxxxxxxxxxxxxxxxxxx';
$profileId='123456789';

//http://github.com/facebook/php-sdk/blob/master/src/facebook.php
require 'facebook.php';

$facebook = new Facebook(array('appId' => $appId,'secret' => $appSecret));
$response = $facebook->api('/'.$profileId.'/feed?limit=1&access_token='.$access_token);

5) Az üzenet részben kell elhelyezni: $response['data'][0]['message']

Nem tudom, hogy milyen hosszú a hozzáférési token érvényes. Facebook azt mondja:

Lehetővé teszi az alkalmazás számára a meghatalmazott kérések nevében a felhasználó bármikor. Alapértelmezés szerint a legtöbb hozzáférési token lejár után egy rövid ideig, hogy biztosítsa az alkalmazások csak kéréseket nevében a felhasználót, ha a aktívan használja az alkalmazást. Ez az engedély teszi a hozzáférési token által visszaküldött OAuth végpont hosszú életű.

Válaszolt 27/04/2010 09:56
a forrás felhasználó

szavazat
1

Megvan dolgozó alkalmazásával Jens' post letölteni egy érvényes access_token. Aztán kibontotta a státusz üzenetek, és az idő a kiküldetés a xml fájlt az alábbi kódot (meg lehet változtatni $ limit megjelenítéséhez többé-kevésbé állapot üzenetet, vagy olyan formában, hogy megváltoztassa).

Vigyázzon, hogy a Facebook azonosítót és a hozzáférési token megvan az alkalmazást készítettek (lásd Jens' post ). Meg tudja nézni a kimenő e szkript itt .

Érezd jól magad!

<?php
if(isset($_POST['limit'])) {
    $limit = $_POST['limit'];
}
else {
    $limit = 3; // number of status messages to display
}
$f = fopen ("https://api.facebook.com/method/status.get?uid=YOUR_FACEBOOK_ID&limit=".$limit."&access_token=YOUR_ACCESS_TOKEN", "r");

while ($line= htmlentities(fgets($f))) {
    if ($line===FALSE) print ("FALSE\n");
    else
    {
        $content = $content." ".$line;
    }
}
fclose ($f);

$message = explode("&lt;message&gt;", $content); // search for the <message> tag
$message_cnt = count($message);
$msg_index = 0;

$time = explode("&lt;time&gt;", $content); // search for the <time> tag

for($i=1; $i<$message_cnt; $i++)
{
    $tmp = explode("&lt;/message&gt", $message[$i]);
    $msg[$msg_index] = $tmp[0]; // status message

    $tmp2 = explode("&lt;/time&gt", $time[$i]);
    $t[$msg_index++] = $tmp2[0]; // time of posting
}

for($i=0; $i<$msg_index; $i++)
{
     echo("<span class=\"status\">".preg_replace('!\015\012|\015|\012!','<br>',$msg[$i])."</span><br>\n
           <span class=\"date\">on ".date("d.m.Y", $t[$i])." at ".date("H:i",$t[$i])."</span><br><br>\n");

}
?>
Válaszolt 01/09/2010 22:02
a forrás felhasználó

szavazat
2

Itt van egy nagyon egyszerű függvény, ha csak azt, hogy a legújabb állapotát. Ez nem függ a Facebook SDK, vagy bármi. Csak azt kell göndör és a JSON támogatást.

Egyszerű PHP függvény, hogy facebook status

Válaszolt 09/11/2010 21:57
a forrás felhasználó

szavazat
1

Megpróbáltam rengeteg útmutatók az elmúlt néhány nap, és egyikük sem működött. Azt hiszem, ez lehet az oka, hogy a facebook megváltoztatásával api követelményeknek. Ez az egyetlen, amit találtam, hogy működik a pillanatban:

http://www.deanblog.co.uk/article/13/adding-a-facebook-status-feed-to-your-website-with-php

Válaszolt 16/06/2011 13:19
a forrás felhasználó

szavazat
1

Csak használja PHPforFB keret ( www.phpforfb.com/en/ ) a leggyorsabb módja.

A kód így néz ki:

require_once('phpforfb_framework.php');

$structInit = array('app_id' => APP_ID,'app_name' => APP_NAME,'sec_key' => APP_SECKEY);

$FacebookAPP = new PHPforFB($structInit);

if($FacebookAPP->lastErrorCode>0){
    //Creation failed => Display error message and exit
    echo "PHPforFB Error: ".$FacebookAPP->lastErrorCode." -> ".$FacebookAPP->lastError;
}else{
    //PHPforFB framework established

    if($FacebookAPP->userLoggedIn === TRUE){

        //If the user is logged in at Facebook:
        //Here you can determine if the user has at least once before
        //granted basic permissions to your application.
        if($FacebookAPP->userAuthenticated === FALSE){

            //The user has not yet granted permissions
            //**your code here**
        }else{
            //The user has already granted permissions, therefore his Facebook ID
            //is known to us. It is always available in $FacebookAPP->userID:

            $userID = $FacebookAPP->userID;
            //**your code here**
        }
    }
}
Válaszolt 20/02/2012 20:10
a forrás felhasználó

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more