Я получаю массив друзей, используя график api, и имею список пользователей в таблице MySQL. Я (вроде) знаю, как использовать join, но я не знаю, как вы собираетесь сравнивать массив в php с таблицей mysql. В основном, идентификатор Facebook – это то, что я ищу, чтобы сопоставить, а затем рисование всех данных из строки, если оно соответствует.
Спасибо, Майкл Амичи
$sql = mysql_query("SELECT * FROM users WHERE fb_id IN (12345,1234,123,12346)"); while($row = mysql_fetch_array($sql)){ echo $row['username']; }
Примечание. Обязательно добавьте индекс в столбец, содержащий идентификаторы facebook.
$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