• 0 Vote(s) - 0 Average
• 1
• 2
• 3
• 4
• 5
 Load multiple models within same function of controller sanjaya Junior Member Posts: 46 Threads: 18 Joined: Mar 2018 Reputation: 0 04-20-2018, 03:12 AM I have getting below error when I try to load two model in one view..  A PHP Error was encountered Severity: Notice Message: Undefined variable: i_price Filename: item/edit.php Line Number: 75 Backtrace: File: C:\wamp64\www\MY\admin\application\views\item\edit.php Line: 75 Function: _error_handler File: C:\wamp64\www\MY\admin\application\controllers\Item.php Line: 75 Function: view File: C:\wamp64\www\MY\admin\index.php Line: 315 Function: require_once My Model:- PHP Code:function update_view($id) {$query = $this->db->query("SELECT * FROM item WHERE item_id='$id'");        $row =$query->row();        return $row; } function item_price($id)    {        $query =$this->db->query("SELECT price FROM price WHERE item_id='$id'");$i_price = $query->row(); return$i_price;    }  Controller:- PHP Code:function update($id) { if ($this->session->userdata('NAME'))        {            $role =$this->session->userdata('ROLE');            if ($role >= 1) {$this->load->helper('form');                $this->load->library('form_validation'); if ($this->input->post()) {                    $this->form_validation->set_rules('item_name', 'Item Name', 'required'); if ($this->form_validation->run() === TRUE) {                        $this->Item_model->update($id);                        $this->session->set_flashdata('message_name', 'Item Successfully Updated. '); redirect('item/create'); } }$data['row'] = $this->Item_model->update_view($id);                $data['$i_price'] = $this->Item_model->item_price($id);                //var_dump($data['$item_price_data']); die();                $this->load->view('includes/header');$this->load->view('includes/top_header');                $this->load->view('includes/left_nav');$this->load->view('item/edit', $data);$this->load->view('includes/footer');                $this->load->view('includes/settings'); } else{$this->session->set_flashdata('message_name', 'You did not have permission to access this page.');                redirect('user/index');            }        }        else        {            $this->session->set_flashdata('message_name', 'Your session has been expired. Please Login'); redirect('login/employee_login'); } View:- Code: New Stock Item Enter Stock Item Details Here session->flashdata('message_name');?> image; if (file_exists($row->image))                                                {                                                    echo '';                                                } else {                                                    echo '';                                                }                                                ?>

 Any one can help me for resolve this error? InsiteFX Posting Freak Posts: 3,194 Threads: 66 Joined: Oct 2014 Reputation: 132 04-20-2018, 03:46 AM Are you sure your getting the price back? I don't see you doing any debugging to check for a price. PHP Code:$query =$this->db->query("SELECT price FROM price WHERE item_id='$id'");$row   = $query->row();if (isset($row)){    $i_price =$row;}else{    // ERROR no Price Found!    $i_price = 0;}return$i_price;  You should always check to make sure that your getting back the values that you want. What did you Try? What did you Get? What did you Expect? Joined CodeIgniter Community 2009.  ( Skype: insitfx ) sanjaya Junior Member Posts: 46 Threads: 18 Joined: Mar 2018 Reputation: 0 04-20-2018, 04:06 AM When I var_dump this variable like var_dump($data['$item_price_data']); die(); I can see the price come. But when I use it like this a have get this error.. InsiteFX Posting Freak Posts: 3,194 Threads: 66 Joined: Oct 2014 Reputation: 132 04-20-2018, 04:17 AM Your assigning row an object for views if it is passed into a $data it is an associated array. To view that in a CodeIgniter view you need to assign it in the Controller to a$data associated array. Try assigning $row = row_array(); You cannot just create a variable and access it in a view because they are not global. What did you Try? What did you Get? What did you Expect? Joined CodeIgniter Community 2009. ( Skype: insitfx ) sanjaya Junior Member Posts: 46 Threads: 18 Joined: Mar 2018 Reputation: 0 04-20-2018, 04:21 AM Am I try this "$row = row_array();" in my model or controller ? InsiteFX Posting Freak Posts: 3,194 Threads: 66 Joined: Oct 2014 Reputation: 132 04-20-2018, 11:08 AM In your Model that's were you are returning it. function item_price What did you Try? What did you Get? What did you Expect? Joined CodeIgniter Community 2009.  ( Skype: insitfx ) dave friend Posting Freak Posts: 810 Threads: 12 Joined: Jun 2015 Reputation: 50 04-20-2018, 01:36 PM I think the problem lies here PHP Code:$data['$i_price'] = $this->Item_model->item_price($id);  Note the $ in the string. Try this instead PHP Code:$data['i_price'] = $this->Item_model->item_price($id);  The there will be a \$i_price variable in the view  (Assuming, as pointed out by others, the model returned something.) sanjaya Junior Member Posts: 46 Threads: 18 Joined: Mar 2018 Reputation: 0 04-21-2018, 07:50 AM Thanks. It's Work.. Thank you Every one..

Theme © 2014 iAndrew