以下代码获取登录用户的Facebook好友,并使用Facebook好友的gamers
检查他的任何朋友是否存在于数据库表id
中。
$friends = $facebook->api('/me/friends');
foreach ($friends["data"] as $value) {
$friendid=$this->upload_model->get_user($value["id"]);
if (($friendid)) {
$my_friends=$this->upload_model->get_user($value["id"]);
$data['top_friends']=$my_friends;
}
}
此代码位于我的codeigniter应用程序的控制器中,其中$this-upload_model->get_user()
是我的模型中的一个函数,可获取gamer
上的所有信息。
模特:
public function get_user($id)
{
$this->db->where('id', $id);
$user=$this->db->get('gamers');
$data = $user->result_array();
return $data;
}
在视图中:
<?php foreach ($top_friends as $friend) : ?>
<p><?php echo $friend['name']; ?></p>
<?php endforeach; ?>
我想要实现的是搜索登录用户的任何Facebook好友是否也已注册并存储在数据库表gamers
中。数据库中存在的所有朋友都会在视图中打印他们的信息。
目前使用此代码,视图仅打印一个条目。打印的一个条目是Facebook的朋友,但它应该列出所有,其中在这种情况下有2个朋友存储在数据库中。但是这段代码只返回一个。
我该如何解决这个问题?
答案 0 :(得分:0)
你必须传递数组
$temp = array();
foreach ($friends["data"] as $value) {
$friendid=$this->upload_model->get_user($value["id"]);
if (($friendid)) {
$my_friends=$this->upload_model->get_user($value["id"]);
$temp[]=$my_friends[0];//as per your comment
}
$data['top_friends'] = $temp;