比较Facebook朋友列表到MySQL表

时间:2012-06-06 22:42:12

标签: php mysql arrays facebook-graph-api

我使用图形api检索一个朋友数组,并在MySQL表上有一个用户列表。我(有点)知道如何使用join,但我不知道如何将php中的数组与mysql表进行比较。基本上Facebook ID是我想要匹配的,然后如果它匹配则从行中绘制所有数据。

谢谢, Michael Amici

2 个答案:

答案 0 :(得分:2)

$sql = mysql_query("SELECT * FROM users WHERE fb_id IN (12345,1234,123,12346)");

while($row = mysql_fetch_array($sql)){
  echo $row['username'];
}

注意:确保在包含facebook ID的列上添加索引。

答案 1 :(得分:1)

$array_with_ids = array('123', '124', '125');
$sql_ids = implode(',', $array_with_ids);

// Select friends already added to db
mysql_query("SELECT * FROM fb_users WHERE fb_id IN (".$sql_ids.")");

// Find friends, that are in your db, but not in the array
mysql_query("SELECT * FROM fb_users WHERE fb_id NOT IN (".$sql_ids.")");

foreach($array_with_ids AS $fb_id)
{
    // Add new friends
    mysql_query("INSERT IGNORE INTO fb_users VALUES (".$fb_id.", ".$name.", ".$stuff.")";
}

请务必使用fb_id

的主索引