1

我有以下模型、控制器和视图。使用 PHP 销售点 11.3。我正在尝试获取数据库列中的最大值并将其显示在视图中的文本字段中。

模型:

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);?>

但我需要在表单文本字段中默认填写此值。提前致谢。

4

2 回答 2

3

应该是这样的

模型

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);  

你看我正在使用行

于 2013-01-22T13:54:01.590 回答
1

在您看来使用:

$max_id->max

并在模型中的 sql 中将其更改为:

"SELECT max(item_id) AS max FROM phppos_items"

看看这是否有效

于 2013-01-22T13:53:36.357 回答