0

我的模型:

function get_data($id)
{   
    $this->db->select('id, Company, JobTitle');     
    $this->db->from('client_list');     
    $this->db->where('id', $id);
    $query = $this->db->get();              

    return $query->result();
}   

我想从中获取数据get_data(),这是正确的方法吗?

public function show_data( $id )
{
    $data = $this->get_data($id);
    echo    '<tr>';     
    echo    '<td>'.$data['Company'].'</td>';                            
    echo    '<td>'.$data['JobTitle'].'</td>';
    echo    '<td>'.$data['id'].'</td>';
    echo    '<td></td>';        
    echo    '</tr>';                                        
}
4

3 回答 3

1

使用该row_array()函数获取数组格式的数据。

参考网址

http://ellislab.com/codeigniter/user-guide/database/results.html

于 2013-07-31T03:49:20.683 回答
0

只是为了改善答案,我"general_model"用于所有控制器,有一些例外情况需要特殊查询,我只是创建所需的模型,因此“general_model”保持不变,我可以在任何项目中使用它。

例如

general_model.php

function _getWhere($table = 'table', $select = 'id, name', $where = array()) {

    $this->db->select($select);
    $q = $this->db->get_where('`'.$table.'`', $where);

    return ($q->num_rows() > 0) ? $q->result() : FALSE;
}
.
.
.
//bunch of another functions 

控制器中我只是调用

$this->data['books'] = $this->general_model->_getWhere('book', '*', array('active' => '1'));
$this->render('book_list_view'); // $this->load->view('book_list_view', $this->data);

旁注:我正在扩展 CI_Controller 因此我使用它$this->data['books']$data['books']将数据传递到视图中

视野中

//check if there are any data
if ($books === FALSE) {
    //some error that there are no books yet
} else {
    //load data to table or something
    foreach ($books as $book) {
        $book->id; // book id
    }
}
于 2013-08-01T07:21:42.723 回答
0

您可以使用 foreach 循环打印

foreach ($data->result() as $row)
{
    echo    '<tr>';     
    echo    '<td>'.$row['Company'].'</td>';                            
    echo    '<td>'.$row['JobTitle'].'</td>';
    echo    '<td>'.$row['id'].'</td>';
    echo    '<td></td>';        
    echo    '</tr>'; 
}

谢谢你

于 2013-07-31T05:14:33.643 回答