Codeigniter

时间:2017-01-19 09:36:30

标签: php mysql codeigniter

我是Codeigniter的新手,在尝试在视图页面中显示数据时遇到问题。我在stackoverflow中遵循Codeigniter文档,教程和问题,但仍然没有答案可以帮助我,虽然我运行教程,它完美地工作。但是当我在我的代码中实现时,它给了我一个错误。希望你们能帮助我。我不确定是什么问题。先谢谢你。

遇到了PHP错误 严重性:注意 消息:未定义的变量:b 文件名:home / adminviewbranch.php 行号:81

form.php的(控制器)

public function view_branch(){
    $this->load->model('branch_model');
    $data = array();
    $data['b'] = $this->branch_model->branch_view();
    $this->load->view('home/adminviewbranch', $data);
}

branch_model.php(模型)

 public function branch_view(){
     //data is retrive from this query
     $query = $this->db->get('branch');  
     return $query;
 }

adminviewbranch.php(视图)

<div id="page" class="container">
    <table id="table_id" class="display">
        <thead>
            <tr>
                <th>Branch Name</th>
                <th>Branch Address</th>
                <th>Branch Contact</th>
                <th>Action</th>
            </tr>
        </thead>
        <tbody>
            <?php
            if(count($b)>0) {
                foreach ($b as $row) {
                    ?>
                    <tr>
                        <td><?=$row->branch_name;?></td>
                        <td><?=$row->branch_add;?></td>
                        <td><?=$row->branch_Hp;?></td>
                        <td><?=$row->branch_Hp;?></td>
                    <?php
                }
            }
            else {
                echo "No Record found!";
            }
            ?>
            </tr>
        </tbody>
    </table>
</div>

6 个答案:

答案 0 :(得分:0)

在foreach做foreach ($b->result() as $row)

答案 1 :(得分:0)

我认为你的foreach中缺少功能。

试试这个:

<?php
    if(count($b)>0)
      {
       foreach ($b->result() as $row){
?>

答案 2 :(得分:0)

将您的型号代码更改为以下

public function branch_view(){

 //data is retrive from this query
 $query = $this->db->get('branch');

 return $query->result_array(); // this allows you to fetch results in the form of multidimentional array
}

然后您可以在视图中访问它

<?php
    if(count($b)>0)
    {
        foreach ($b as $row)
        {
            ?>
            <tr>
                <td><?=$row['branch_name'];?></td>
                <td><?=$row['branch_add'];?></td>
                <td><?=$row['branch_Hp'];?></td>
                <td>Action</td>
            </tr>
            <?php
        }
    }
    else
    {
        echo "<tr colspan='3'><td>No Record found!</td></tr>";
    }
?>  

答案 3 :(得分:0)

修改您的模型代码,如下所示

public function branch_view(){

 //data is retrive from this query
$query = $this->db->get('branch')->result_array();  
return $query;
}

答案 4 :(得分:0)

您的模型不是结果。您可以使用print_r()函数进行检查。您必须使用对象或数组返回。return $query->result();
您的观点必须是foreach($tes as $t){$t->your_view}
return $query->row();
 单个数据$row->your_view

答案 5 :(得分:0)

在模型中更改此行

$query = $this->db->get('branch');

$query = $this->db->get('branch')->result();

(OR) 在视图中更改此行

<?php
if(count($b)>0) {
    foreach ($b as $row) {

&GT?; 到

<?php
if($b->num_rows()>0) {
foreach ($b->result() as $row) {

&GT;