我有一个问题,当我想从我的控制器运行一个函数时,它说"调用一个非对象的成员函数num_rows()"。
这是我的web.php控制器中名为category的函数
public function categori($id){
$cek = $this->mymodel->GetKategori("where kode_kategori = '$id'");
if ($cek->num_rows() > 0) {
$data = array(
"produk_populers" => $this->mymodel->GetProduk("where kode_kategori = '$id'")->result_array()
);
$comp = array(
"header" => $this->html_header(),
"navbar" => $this->html_navbar(),
"produk_populer" => $this->load->view("produk_populer",$data,true),
"kategori" => $this->html_kategori(),
"footer" => $this->html_footer(),
);
$this->load->view("index",$comp);
}else{
show_404();
}
}
这个模型
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
class Mymodel extends CI_Model {
public function GetProduk($where=""){
$data = $this->db->query('select * from produk'.$where);
return $data;
}
public function GetKategori($where=""){
$data = $this->db->query('select * from kategori '.$where);
return $data -> result_array();
}
}
任何人都可以告诉我它有什么问题吗?我很喜欢这种东西..谢谢
答案 0 :(得分:2)
表示从
返回的值 $cek = $this->mymodel->GetKategori("where kode_kategori = '$id'");
不是对象。因此,方法num_rows()
在该值上下文中不存在。
在调用此方法之前,请尝试使用var_dump($cek)
并查看输出结果。