Передайте переменную из контроллера для просмотра и используйте переменную для отображения данных - PullRequest
0 голосов
/ 11 октября 2019
Severity: Notice

Message: Undefined variable: blog_data

Filename: views/savedata.php

Line Number: 4

Backtrace:

File: /Applications/MAMP/htdocs/success_story_ci/application/views/savedata.php
Line: 4
Function: _error_handler

File: /Applications/MAMP/htdocs/success_story_ci/application/controllers/Story.php
Line: 31
Function: view

File: /Applications/MAMP/htdocs/success_story_ci/index.php
Line: 315
Function: require_once

    public function savedata(){

        if(!empty($this->input->post())){

            $data = array(
                          'cluster_det' => $this->input->post('Clust_det'),
                          'need_of_activity' => $this->input->post('need_of_the_activity'),
                          'intervention' => $this->input->post('intervention'),
                          'impact' => $this->input->post('impact'),
                          'key_stakeholders' => $this->input->post('Key_stakeholders'),
                          'beneficiaries' => $this->input->post('beneficiaries'),
                          'activity_det' => $this->input->post('activity_det'),
                          'reference_contact' => $this->input->post('reference_contact'),
                          'image' => 'imageaddress',//$this->input->post('image')
                          'title' => $this->input->post('title')
                          );

            $res = $this->db->insert('blog', $data);
            $id = $this->db->insert_id();
            $this->db->select('*');
            $this->db->from('blog');
            $this->db->where('id', $id);
            $blog_data = $this->db->get();

            $this->load->view('savedata', $blog_data);

            echo 'data saved';
            return true;
        }

    }

    public function index()
    {
        $this->load->view('savedata');
    }

вышеприведенный код должен передать переменную в представление, т.е. команду вставки данных и идентификатор из последней записи, чтобы последняя запись была передана в качестве переменной $blog_data для просмотра. Также требуется отправить переменную в представлении с codeigniter для отображения записи в блоге.

Ответы [ 4 ]

1 голос
/ 11 октября 2019

Измените

$blog_data = $this->db->get();

на

$blog_data['blog_data'] = $this->db->get()->result_array();

или

$blog_data['blog_data'] = $this->db->get()->row_array();

, чтобы получить данные.

1 голос
/ 11 октября 2019

Удалите это

$blog_data = $this->db->get()

и поместите этот код

$blog_data['blog_data'] = $this->db->get()->row_array();
0 голосов
/ 11 октября 2019

когда вы находитесь в модальном состоянии, вам нужны данные в формате массива, поэтому мы используем

In modal:-
$query = $this->db->get('table_name');
    $result_var = $query->result_array();
    return $result_var;
In Controller :-
$this->modal->('modal_name');
$variable_name['For_view_pass_variable_name'] = $this->modal_name->modal_function_name;

try to use MVC pattren it will be helpful for you.
0 голосов
/ 11 октября 2019

Попробуйте это, чтобы передать переменную view
Контроллер:

$data = array();
$data['blog_data'] = $blog_data;//from your model or db source
$this->load->view('savedata', $blog_data);

Просмотр

<?php echo'<pre>';print_r($blog_data);die; ?>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...