Я использую CodeIgniter.Я получаю сообщение об ошибке
Message: `Invalid argument supplied for foreach()`.
Давайте объясним вам подробнее.Ниже приведен код, который я использую в контроллере
$send->customer_id=1;//This is just for information
$fetchdata=$this->Member_model->getAll($send->customer_id);
Я получил вывод.Я нашел two
записей, которые относятся к 1
Array
(
[0] => stdClass Object
(
[member_id] => 825
[customer_id] => 123
[profile_pic] => sbc.jpg
[first_name] => Shagun
)
[1] => stdClass Object
(
[member_id] =>
[customer_id] =>
[profile_pic] => abfg.jpg
[first_name] => Mayra
)
)
Просто обратите внимание, что я не получаю member_id
и customer_id
во втором массиве.
Нижеэто код модели, который я получаю, выводя
Модель
public function getAll($id){
$get_s_member = array('members.is_Approved'=>1,'relation_member.primary_customer_id' =>$id);
$this->db->select('*');
$this->db->from('members');
$this->db->join('relation_member', 'relation_member.secondary_member_id = members.member_id','LEFT');
$this->db->join('relations', 'relations.relations_id = relation_member.relation_with_primary_member','LEFT');
$this->db->join('membership_details', 'members.member_id = membership_details.member_id','LEFT');
$this->db->where($get_s_member);
$query = $this->db->get();
$res = $query->result();
return $res;
}
Почему я получаю пустое значение, потому что в таблице membership_details
нет записи.Мне нужно, чтобы хотя бы таблица членов отображала там все записи.
Я должен передать member_id здесь
$allData['allActivitys']=$this->Member_model->getActivity($member_id);
foreach ($allData['allActivitys'] as $key => $sec_activities) {
}
Модель
public function getActivity($gotSecondaryMemberId){
$getDetails = array('members.member_id'=>$gotSecondaryMemberId);
$result = $this->db->where($getDetails)
->select('*')
->from('members')
->join('relation_member', 'relation_member.secondary_member_id = members.member_id')
->join('relations', 'relations.relations_id = relation_member.relation_with_primary_member')
->join('member_activity', 'members.member_id = member_activity.member_id','LEFT')
->join('activity_name', 'activity_name.activity_name_id = member_activity.activity_id','LEFT')
->get()
->result();
if($result)
{
return $result;
}
else
{
return 0;
}
}
, но это происходит только первыммассив и во вторичной ошибке это сообщение об ошибке: Invalid argument supplied for foreach()
.