我怎样才能获得Facebook UID的活动?

时间:2013-03-03 12:14:07

标签: facebook events search

我正在使用PHP Facebook SDK开发一个网站。 我通过图表获取某个地点的所有事件,并使用代码在网站上显示:

$evt=$facebook->api('/search?fields=name,description,location,start_time,end_time&q='.urlencode($var[0]).'+'.$_GET['tipo'].'&type=event&limit=500&since=today&until='.$dq);

这有效但我有这个问题:通过网站我也可以通过Facebook登录网络用户的Facebook ID并将其ID存储到我的MySQL数据库表pnota_USERS中。

要获取存储在我的数据库中的Facebook ID的所有事件,我使用以下代码:

$db_host=modGoogleResHelper::db_host($params);
$db_pass=modGoogleResHelper::db_pass($params);
$db_user=modGoogleResHelper::db_user($params);
$db_name=modGoogleResHelper::db_name($params);


$db=mysql_connect($db_host,$db_user,$db_pass) or die("errore nella connessione al database");

mysql_select_db(db_name);
$query="select * from pnota_users where facebook_id<>'' or facebook_id<>null";
$riga="";
$ret=mysql_query($query,$db);
if(mysql_affected_rows()>0){
while($row=mysql_fetch_array($ret))
{
$riga.=$row['facebook_id'].";";
}
mysql_free_result($ret);
}
$query="";
$rrx=explode(";",$riga);

foreach($rrx as $kkx)
{
if($kkx!="")
{
$zzz= $facebook->api('/'.$kkx.'/events', 'get', array("fields"=>"id, owner, name,location"));
print_r($zzz);
$fql = "SELECT name, location, start_time,end_time,eid FROM event WHERE eid IN (SELECT eid FROM event_member WHERE uid =".$kkx.") and start_time >='".$today."' and start_time<='".$tomorrow."' order by start_time desc" ;
$ret_objxx = $facebook->api(array(
'method'    =>'fql.query',
'req_perms' => 'friends_events,publish_stream,read_friendlists,email,user_events,manage_friendlists,rsvp_event,manage_notifications,user_online_presence',
'query'     => $fql) );

foreach($ret_objxx as $keyxx)
    {
$item=array("eid" => keyxx[eid],"name"=>'.',"start_time"=>$keyxx[start_time],"end_time"=>$keyxx[end_time],"timezone"=>'-',"location"=>$keyxx[location]);
array_push($events,$item);
    }
    }
    } 

此FQL不会向我显示结果。 我尝试将查询FQL直接放到Graph API Explorer中: 在Graph API Explorer中,如果我在右上角选择应用程序Graph API Explorer,它会显示结果。 如果我在右上角的Graph API资源管理器中选择应用程序Graph API Explorer iprimanota,它是我的应用程序的名称,它不会向我显示结果。

我的问题是:

我使用不好的方法

0 个答案:

没有答案