gpt4 book ai didi

php - 如何在 PHP codeigniter 中根据管理员获取用户

转载 作者:行者123 更新时间:2023-11-29 12:00:57 24 4
gpt4 key购买 nike

我有一个 codeigniter 应用程序,其中有三个用户:管理员、经销商、用户。现在在管理仪表板上我向用户和经销商显示两者。我想为管理员创建一个 View ,他可以在其中根据经销商查看用户。每个用户都通过一个名为“key”的字段映射到他的经销商,该字段是唯一的。因此,当我单击经销商时,我只想显示他的用户,而不是数据库中的所有用户。

下面是我的 get 和 get_by 方法的基本模型:

public function array_from_post($fields){
$data = array();
foreach ($fields as $field) {
$data[$field] = $this->input->post($field);
}
return $data;
}


public function get($id = NULL, $single = FALSE){

if ($id != NULL) {
$filter = $this->_primary_filter;
$id = $filter($id);
$this->db->where($this->_primary_key, $id);
$method = 'row';
}
elseif($single == TRUE) {
$method = 'row';
}
else {
$method = 'result';
}


return $this->db->get($this->_table_name)->$method();
}

public function get_by($where, $single = FALSE){
$this->db->where($where);
return $this->get(NULL, $single);
}

经销商表 Reseller Table

用户表 Users Table

经销商 Controller :

<?php

Reseller 类扩展了 Admin_Controller{

        public function __construct ()
{
parent::__construct();
}

public function index ()
{
$usertype=$this->session->userdata('usertype');
if($usertype ==="admin")
{
// Fetch all users
$this->data['users'] = $this->reseller_m->get();
// Load view
$this->data['subview'] = 'admin/reseller/index';
$this->load->view('admin/_layout_main', $this->data);
}
else
{


$this->load->view('permission');
}

}

REseller View

最佳答案

我从你的问题中了解到的是;您想要显示经销商及其用户的综合结果。为此,您必须在表之间使用 JOIN。这是Active Record Class查看有关加入的链接。

或者类似的东西

从 reseller_table AS RT 中选择 *
左连接 users_table 作为 UT ON UT.sip_id=RT.sip_id
WHERE 条件

或者 CI 代码

$query="从经销商中选择经销商。*,users.total_users
LEFT JOIN (SELECT COUNT(id) astotal_users,sip_id from users)AS UT on UT.sip_id =reseller.id";
$this->db->query($query);

关于php - 如何在 PHP codeigniter 中根据管理员获取用户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32393861/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com