Codeigniter - вызов неопределенного метода CI_DB_mysql_driver :: - PullRequest
3 голосов
/ 02 апреля 2010

Я получаю эту ошибку "Неустранимая ошибка: вызов неопределенного метода CI_DB_mysql_driver :: findVenueInfo ()" при попытке использовать одну из моих моделей.

У меня есть вид с этим якорем:

echo anchor('welcome/searchVenue/' . $row->venue_id, $row->venue);

, которая генерирует ссылку типа: http://localhost/ci-llmg/index.php/welcome/searchVenue/1

метод называется

function searchVenue()
{
    $this->load->model('venues');
    //get venue info
    $data['info'] = $this->venues->findVenueInfo($this->uri->segment(3)); //this line generates the error

}

и функция findVenueInfo в модели (venues.php):

function findVenueInfo($id)
{
    $data = array();
    $this->db->where('id', $id);

    $Q = $this->db->get('venues');
    if ($Q->num_rows() > 0)
    {
        foreach ($Q->result() as $row)
        {
            $data[] = $row;
        }
    }

    $Q->free_result();
    return $data;
}

.. но результатом этого является фатальная ошибка: вызов неопределенного метода CI_DB_mysql_driver :: findVenueInfo () Я, наверное, скучаю по чему-то глупому, но не могу заставить его работать! Что ты думаешь?

Ответы [ 3 ]

6 голосов
/ 24 сентября 2012

Вы уверены, что ваш файл index.php в корне проекта ur содержит корректную загрузку

Перейти к концу файла index.php и включить файл начальной загрузки непосредственно перед включением codeigniter.php.

Ваш index.php файл должен иметь следующие строки:

/*
 * --------------------------------------------------------------------
 * LOAD THE BOOTSTRAP FILE
 * --------------------------------------------------------------------
 *

 * And away we go...
 *
 */

require_once APPPATH.'third_party/datamapper/bootstrap.php';

require_once BASEPATH.'core/CodeIgniter.php';
3 голосов
/ 29 июня 2010
function findVenueInfo($id)
{
    $data = array();
    $this->db->select()->from('venues')->where('id', $id);<----change it to

    $Q = $this->db->get();<----change it to
    if ($Q->num_rows() > 0)
    {
        foreach ($Q->result() as $row)
        {
            $data[] = $row;
        }
    }

    $Q->free_result();
    return $data;
}
2 голосов
/ 05 декабря 2014

Я получил похожую ошибку и обнаружил, что в 3.0 мне нужно было включить query_builder в application / config / database.php

$query_builder = TRUE;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...