Запрос к базе данных отображается в виде, а не в $ data - PullRequest
0 голосов
/ 11 февраля 2012

Код ниже, кажется, отображается в «представлении», а не через $data, как это должно быть (я еще не отражал $data['companyName'] в моем представлении, но $data['pageTitle'] работает нормально).

Проблема:

enter image description here

Модель:

function companyName()
    {
        $companyName = $this->db->query("SELECT company_name FROM core");

        if ($companyName->num_rows() > 0)
        {
            foreach ($companyName->result() as $row)
            {
                echo $row->company_name;
            }
        }

Контроллер:

public function index()
{
    $data['companyName'] = $this->core_model->companyName();
    $data['pageTitle'] = "Admin Login";
    $this->load->view('admin/assets/header', $data);
    $this->load->view('admin/login.php');
    $this->load->view('admin/assets/footer');
}

1 Ответ

2 голосов
/ 11 февраля 2012

Путем echo что-то в модели, что echo происходит, когда модель обрабатывается, то есть еще до того, как представление станет даже мерцанием в глазах контроллера.

Вместо этого вы должны сделатьчто-то вроде этого в вашей модели:

function companyName()
{
    $companyName = $this->db->query("SELECT company_name FROM core");

    if ($companyName->num_rows() > 0)
    {
        $company_names = '';
        foreach ($companyName->result() as $row)
        {
            $company_names .= $row->company_name;
        }
    }
    return $company_names;
}

Тогда вы можете передать $data в представление, и строка будет готова вывести на экран, как вы хотите.

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