У меня есть контроллер Customer с этой функцией:
function index(){ $query = $this->db->query(" SELECT ELECTRICITY_BILL_ID,TOTAL_AMOUNT FROM _ELECTRICITY_BILL where CUSTOMER_LOCATION_ID = 16 "); foreach ($query->result() as $row){ $utility_array = array( 'electricity_bill_id' => $row->ELECTRICITY_BILL_ID, 'amount' => $row->TOTAL_AMOUNT); } $this->load->view('Customer',$utility_array); }
У меня есть вид клиента с этим:
<?php foreach($utility_array as $row) { echo $row['electricity_bill_id']; echo $row['amount']; echo "</br >"; } ?>
Я вижу две ошибки:
Undefined variable: utility_array Invalid argument supplied for foreach()
смените контроллер.
foreach ($query->result() as $row){ $utility_array['data'] = array( 'electricity_bill_id' => $row->ELECTRICITY_BILL_ID, 'amount' => $row->TOTAL_AMOUNT); }
В представлении «Клиент»,
<?php foreach($data as $row) { echo $row['electricity_bill_id']; echo $row['amount']; echo "</br >"; } ?>
это должно сработать. попробуй это.
Попробуйте этот код контроллера, он будет работать: –
function index(){ $query = $this->db->query( "SELECT ELECTRICITY_BILL_ID,TOTAL_AMOUNT FROM _ELECTRICITY_BILL where CUSTOMER_LOCATION_ID = 16" ); foreach ($query->result() as $row){ $utility_array['utility_array'] = array( 'electricity_bill_id' => $row->ELECTRICITY_BILL_ID, 'amount' => $row->TOTAL_AMOUNT ); } $this->load->view('Customer',$utility_array); }
Если вы передаете массив или объект для просмотра, вы должны назначить ключ для переменной. Используя ключ, вы можете получить значения в представлении. Таким образом, для $ utility_array вы должны назначить значение ключа.
Измените свой контроллер следующим образом:
$utility_array= array() $query = $this->db->query("SELECT ELECTRICITY_BILL_ID,TOTAL_AMOUNT FROM _ELECTRICITY_BILL where CUSTOMER_LOCATION_ID = 16"); if ($query->num_rows() > 0) { foreach ($query->result() as $row) { $utility_array[] = $row; } } // print_r($utility_array);
Переход к вашему контроллеру:
$this->load->view('utility_array',$utility_array);
На ваш взгляд:
if (!empty($utility_array)) { foreach($utility_array as $row) { echo $row->electricity_bill_id; echo $row->amount; echo "</br >"; } }
Попробуйте это
В контроллере
function index(){ $query = $this->db->query("SELECT ELECTRICITY_BILL_ID,TOTAL_AMOUNT FROM _ELECTRICITY_BILL wincache_refresh_if_changed() WHERE CUSTOMER_LOCATION_ID = 16"); $result = $query->result_array(); if (empty($result)) { $data['utility_array'] = false; } else { $data['utility_array'] = $result; } $this->load->view('Customer',$data); }
Ввиду
foreach ($utility_array as $value) { echo $value['ELECTRICITY_BILL_ID']; echo $value['TOTAL_AMOUNT']; echo "<br>"; }