我写了一小段根据输入用户提供的数据库表中的值。这里有很快发生的事件:
但我收到的是一个错误:
消息:未定义的变量:due_amount 文件名:main / new_payment.php 行号:148
new_payment.php中的第148行是
);
在视图中。
这是我的模型:
function get_by_room_number($room_data) {
$this->db->select('due_amount');
$query = $this->db->get_where('rooms', array('room_number' => $room_data), 1);
if($query->num_rows()>0) {
foreach ($query->result() as $row) {
return $row->due_amount;
}
}
这是控制器:
function search_by_number() {
$room_data = $this->input->post('room_number');
$due_amount = $this->payments_model->get_by_room_number($room_data);
$this->index();
}
这是查看 :( new_payment.php)
<?php echo form_open('payments/search_by_number'); ?>
<?php $data = array(
'name' => 'total_amount',
'id' => 'appendedPrependedInput',
'class' => 'span2',
'value' => $due_amount
); // Line Number 148
echo form_input($data);
?>
<?php echo form_close(); ?>
答案 0 :(得分:1)
尝试
$data['due_amount'] = $this->payments_model->get_by_room_number($room_data);
并尝试将其发送到像
这样的视图$this->load->view('view_file',$data);
并在您的视图文件中回显它
echo $due_amount;
假设$data
是您从控制器函数传递到视图的数组。您将控制器中的变量传递给视图。您需要通过数组数据传递它,然后您可以获取变量名称变量
答案 1 :(得分:1)
您应该将due_amount
分配给$data
变量并将其传递给查看。像这样:
$data['room_data'] = $this->input->post('room_number');
$data['due_amount'] = $this->payments_model->get_by_room_number($data['room_data']);
$this->load->view('my_view', $data);
然后在视野中你可以这样做:
print_r($room_data);
print_r($due_amount);
CodeIgniter User Guide可能会帮助您更好地理解它。