php - codeigniter如何连接3个表并从用户id显示

标签 php mysql codeigniter

Mydatabase image click to see

我要显示

组1

  • 商店1
  • 商店2
  • 商店3

组2

  • 商店1
  • 商店2
  • 商店3
  • 商店5

组2

  • ......
  • ...
  • ...
<小时/>
function getGroups($user_id) {

    $this->db->select ( '*' ); 
    $this->db->from ( 'user' );
    $this->db->join ( 'groups', 'groups.user_id = user.id');
    $this->db->join ( 'shop', 'shop.group_id = groups.group_id');
    $this->db->where('user.id',$user_id);
    return $this->db->get()->result_array();
}

最佳答案

谢谢大家的回答。 对于上面的回答,我可能不是不明白。 我改用这个方法。 这可能不是正确的方法。 为我工作。

function getGroups($user_id) {
    $this->db->select('*');
    $this->db->from('groups');
    $this->db->where('user_id', $user_id);
    $this->db->order_by('group_id', 'ASC');
    $group_data = $this->db->get()->result_array();

    foreach($group_data as $key=>$value){

        $this->db->select('*');
        $this->db->from('shop');
        $this->db->where('group_id', $value['group_id']);
        $this->db->order_by('shop_id', 'ASC');
        $shop_data = $this->db->get()->result_array();

        $my_group[$key]['group_name'] = $value['group_name'];
        $my_group[$key]['group_id'] = $value['group_id'];
        $my_group[$key]['group_shop'] = $shop_data;


    }
    return $my_group;
}

关于php - codeigniter如何连接3个表并从用户id显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42991157/

相关文章:

php - codeigniter 中的 INNER JOIN ON 条件

php - Codeigniter 帮助 - Controller 中的事件记录和循环

php - 以编程方式更新 WooCommerce 产品中设置的自定义属性值

php - 使用 $searchEscaped 显示特定数据

php - 在 $wpdb 查询中传递 PHP 变量

php - PHP 数组中的 MySQL 数据

php - 从 FTP 返回文件树

Javascript 验证在 codeigniter 中不起作用

php - EasyAdminBundle 实体表单字段自定义

php - 从 MySQL 结果创建层次数组