首页 > 解决方案 > Codeigniter:在视图中查看mysql数据

问题描述

我有个问题。我无法在视图中回显我的关联表。print_r 显示只有一个 unname,Controller:

    $this->db->select('uname, uid, content, date');
    $this->db->join('users','posts.p_uid = users.uid');
    $this->db->from('posts');
    $posts = $this->db->get();
    foreach($posts->result_array() as $row){
        $data[] = $row;
    }
    print_r($data);
    $this->load->view('posts',$data);

看法:

<div class="col-md-6 col-lg-4 border p-0 offset-md-4 ">
<div class="col-md-12 col-lg-12 border">
<?php print_r($uname); ?>
</div> 
</div>

来自控制器的 print_r 结果:

Array ( 
    [0] => Array ( 
        [uname] => admin 
        [uid] => 6 
        [content] => test test test test test test test test 
        [date] => 2018-06-27 
    ) 
    [1] => Array ( 
        [uname] => admin 
        [uid] => 6 
        [content] => test2 test2 test2 test2 test2 test2 test2 test2 test2 test2 
        [date] => 2018-06-26 
    ) 
    [2] => Array ( 
        [uname] => admin2 
        [uid] => 7 
        [content] => test3 test3 test3 test3 test3 test3 test3 test3 
        [date] => 2018-06-17 
    ) 
)

视图的 print_r 结果:admin2

标签: phpcodeigniter

解决方案


您没有将uname参数传递给您的视图:

检查以下:

foreach($posts->result_array() as $row){
        $data['uname'][] = $row;      // Set the parameter to pass to your view will be array
    }

这将array给出uname, uid, content, date.

如果您想将您的字段值传递给您的视图,那么执行以下操作可能会有所帮助。

我认为您的答案如下(根据您的评论)。

foreach($posts->result_array() as $row){
            $data['uname'][] = $row['uname'];      // Set the parameter to pass to your view will be your value
        }

推荐阅读