我有以下模型,控制器和视图。使用PHP销售点11.3。我试图采取一个DB列的最大值,并在视图中的文本字段中显示它。
模型:
function getmax()
{
$query = $this->db->query("SELECT max(item_id) FROM phppos_items");
return $query->row();
}
控制器:
function view()
{
$data['max_id']=$this->Item->getmax();
$this->load->view("items/form",$data);
}
视图:
<?php
echo $max_id; //line 16. Error Here.
echo form_input(array(
'name'=>'item_number',
'id'=>'item_number',
'value'=>set_value('item_number',$max_id)) //is this right??
);
?>
执行时出现两个错误。
A PHP Error was encountered
Severity: 4096
Message: Object of class stdClass could not be converted to string
Filename: items/form.php
Line Number: 16
A PHP Error was encountered
Severity: Warning
Message: htmlspecialchars() expects parameter 1 to be string, object given
Filename: helpers/form_helper.php
Line Number: 625
我得到的max_id没有任何问题时,使用作为下拉视图
<?php echo form_dropdown('max_id',$max_id);?>
但是我需要这个值在默认情况下填写在表单文本字段。
应该是这样的
模型function getmax()
{
$query = $this->db->query("SELECT max(item_id) as MaxID FROM phppos_items");
return $query->row();
}
控制器function view()
{
$data['row']=$this->Item->getmax();
$this->load->view("items/form",$data);
}
视图$options['name'] = 'item_number';
$options['id'] = 'item_number';
$options['value'] = set_value('item_number',$row->MaxID);
echo form_input($options);
你看我用的是row
在视图中使用:
$max_id->max
,并在模型中的SQL中将其更改为:
"SELECT max(item_id) AS max FROM phppos_items"
看看是否可以