消息:未定义的属性:CI_DB_mysqli_driver::$query



我在CodeIgniter中遇到了问题。

我的代码:

 <?php 
   $kullanici_yetki_id=$this->session->user_sess['id'];
   $result= array(
        $this->db->select('*'),
        $this->db->from('menuler'),
        $this->db->join('menu_yetki', 'menuler.menu_id=menu_yetki.menu_id'),
        $this->db->where('menuler.is_active', '1'),
        $this->db->where('user_id', $kullanici_yetki_id),
        $this->db->where('durum', "1"),
        $this->db->limit('1')   
                );      
        $sorgu=$this->db->query->$result();
        if($sorgu->num_rows()>0){
        foreach ($sorgu as $row) {
            echo $row->menu_adi;
        } } else{
            echo "nope";
        }
      ?>

当我运行它时,它会返回此错误:

消息:未定义的属性:CI_DB_mysqli_driver::$query

文件名:管理员/_leftmenu.php 行号:34

回溯:

文件: C:\wamp64\www\bireberberci\application\views\admin_leftmenu.php 行: 34 功能: _error_handler

文件: C:\wamp64\www\bireberberci\application\controllers\admin\Home.php 行: 16 功能:视图

文件: C:\

wamp64\www\bireberberci\index.php 行: 315 函数: require_once

而这个:

遇到 PHP 错误严重性:错误

消息:方法名称必须是字符串

文件名:管理员/_leftmenu.php

行号:34

你缺少get((,你的会话部分user_sess['id']是错误的

https://www.codeigniter.com/user_guide/general/models.html#loading-a-model

<?php 
    class Example_model extends CI_Model {
        public function example() {
            $data = array();
            $this->db->select('*');
            $this->db->from('menuler');
            $this->db->join('menu_yetki', 'menuler.menu_id=menu_yetki.menu_id');
            $this->db->where('menuler.is_active', '1');
            $this->db->where('user_id', $this->session->userdata('id'));
            $this->db->where('durum', "1");
            $this->db->limit('1');
            $sorgu = $this->db->get();
            if($sorgu->num_rows() > 0) {
            foreach ($sorgu->result() as $row) {
                $data[] = $row->menu_adi;
            } 
            } 
            return $data;
    }
}

你很接近,但你的语法有点偏离。有关详细信息,请参阅有关查询生成器的手册。

您最大的错误是将所有数据库调用放入一个数组中。这更接近您想要的。

$kullanici_yetki_id = $this->session->userdata['id'];
$this->db->from('menuler');
$this->db->join('menu_yetki', 'menuler.menu_id=menu_yetki.menu_id');
$this->db->where('menuler.is_active', '1');
$this->db->where('user_id', $kullanici_yetki_id);
$this->db->where('durum', "1");
$this->db->limit('1');
$sorgu = $this->db->get();
if ($sorgu->num_rows() > 0) {
    foreach ($sorgu->result() as $row) {
        echo $row->menu_adi;
    }
} else {
    echo "nope";
}

最新更新