1

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

谢谢,迈克尔·阿米奇

4

2 回答 2

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 的列上添加索引。

于 2012-06-06T22:51:12.587 回答
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 使用主索引

于 2012-06-06T22:54:36.947 回答