Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/codeigniter/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 无法在Codeigniter中加入并从数据库获取数据_Php_Codeigniter_Mysqli_Jointable - Fatal编程技术网

Php 无法在Codeigniter中加入并从数据库获取数据

Php 无法在Codeigniter中加入并从数据库获取数据,php,codeigniter,mysqli,jointable,Php,Codeigniter,Mysqli,Jointable,我想联接三个表并从函数中获取数据,但无法这样做。我能够获得类别联合数据,但不能获得产品线数据 我有三张桌子。一个是cv\u产品第二个是cv\u类别,最后一个是product\u行。我在cv\u products中有一个名为product\u line的表字段 这是我在模型中的函数 public function get_products($id = 0, $slug = FALSE){ if($id === 0 && $slug === FALSE){ $this->db

我想联接三个表并从函数中获取数据,但无法这样做。我能够获得类别联合数据,但不能获得产品线数据

我有三张桌子。一个是
cv\u产品
第二个是
cv\u类别
,最后一个是
product\u行
。我在
cv\u products
中有一个名为
product\u line
的表字段

这是我在模型中的函数

public function get_products($id = 0, $slug = FALSE){
if($id === 0 && $slug === FALSE){

$this->db->order_by('cv_products.id', 'DESC');

$this->db->select('cv_products.*, cv_category.name as categoryname', 'product_line.name as linename','cv_category.id as category_id' );

$this->db->join('cv_category','cv_category.id = cv_products.category', 'left');

$this->db->join('product_line','product_line.id = cv_products.product_line', 'left');

$query= $this->db->get('cv_products');

return $query->result_array();

}
$this->db->select('cv_products.*, cv_category.name as categoryname', 'product_line.name as linename','cv_category.id as category_id' );

$this->db->join('cv_category','cv_category.id = cv_products.category', 'left');

$this->db->join('product_line','product_line.id = cv_products.product_line', 'left');

$query= $this->db->get_where('cv_products', array('cv_products.id' => $id, 'slug' => $slug));

return $query->row_array();



}
鉴于它给出了一个错误,如 严重性:注意 消息:未定义索引:linename


由于我在
cv_产品
cv_类别
product_行
中都有一个字段
name
,因此在选择时,我将
product_行.name作为linename
。对于
cv\u类别
joint可以,但对于
产品线
joint time则无法获得相同的报价。

在您选择的通话中,报价似乎有点偏离

更改此项:

$this->db->select('cv_products.*, cv_category.name as categoryname', 'product_line.name as linename','cv_category.id as category_id' );
为此:

$this->db->select('cv_products.*, cv_category.name as categoryname, product_line.name as linename,cv_category.id as category_id' );
请注意,我在select语句的开头打开了引号,并在结尾关闭了它。不需要将单个字段引用为
$this->db->select()
,然后可能将它们视为函数参数

对函数中的第二个select语句也重复此方法


让我知道它是否对你有用。

非常感谢你,我花了将近5个小时才明白这一点,谢谢你的朋友