Codeigniter:查看 foreach 调用控制器

Posted

技术标签:

【中文标题】Codeigniter:查看 foreach 调用控制器【英文标题】:Codeigniter: View foreach call Controller 【发布时间】:2017-06-13 10:01:29 【问题描述】:

错误: 遇到 php 错误

严重性:通知

消息:未定义变量:calificacione 消息:为 foreach() 提供的参数无效

怎么了? 在Controller 中创建变量:$data['calificacione'] 并在视图中调用foreach

我的观点:

<table class="table table-condensed table-striped">
                <thead>
                  <tr>
                    <th>Calificacione</th>
                  </tr>
                </thead>
                <tbody>
                  <?php 
                    foreach ($calificacione as $key => $value) 
                      echo "<pre>";print_r($value);echo "</pre>";
                    
                  ?>
                    <tr>
                      <td><?php  ?></td>                        
                    </tr>
                  <?php  ?>     
                </tbody>
              </table>

我的控制器

class Provedore extends CI_Controller
function __construct()

    parent::__construct();
    $this->load->model(['Provedore_model','Provedor_calificacione_model','Provedor_calificacione_model','Personas_contato_model','Direcione_model']);
 

/*
 * Listing of all provedores
 */
function index()

    $data['provedores'] = $this->Provedore_model->get_all_provedores();
    $data['calificacione'] = $this->Provedor_calificacione_model->get_all_provedor_calificaciones();

    $data['_view'] = 'provedore/index';
    $this->load->fullView('layouts/main',$data);

【问题讨论】:

不是将数据作为第二个参数传递,而是在加载视图之前加载变量:$this-&gt;load-&gt;vars($data); $this-&gt;load-&gt;fullView('layouts/main');。试试这样。 (也检查here。) 【参考方案1】:

请检查下面提到的可能性。

您是从模型中获取数据还是有任何错误。

var_dump($data['calificacione']);
die;
$data['_view'] = 'provedore/index';
$this->load->fullView('layouts/main',$data);

请分享您的输出,以便我们为您提供帮助。

【讨论】:

【参考方案2】:

在您的模型中 Provedore_model get_all_provedores 可能有一些参数,例如

function get_all_provedores ($argument)

// your database query

而你没有满足那个论点

【讨论】:

【参考方案3】:
//try this

 function index()
 
$provedores = $this->Provedore_model->get_all_provedores();
 $data['provedores'] = $provedores;
 $calificacione = $this->Provedor_calificacione_model->get_all_provedor_calificaciones();
  $data['calificacione'] = $calificacione;
 $this->load->view('layouts/main',$data)
 $this->load->view('provedore/index',$data)

【讨论】:

同样的错误还在继续 同样的错误信息显示你之前得到的。@cristian marques。

以上是关于Codeigniter:查看 foreach 调用控制器的主要内容,如果未能解决你的问题,请参考以下文章

codeigniter 上 foreach 中的条件(排序依据)

CodeIgniter 错误、result_array 和 foreach 错误

使用 PHP 和 codeigniter 显示带有 foreach 函数的固定表

使用codeigniter对查询进行foreach?

在视图中使用 foreach 的 Codeigniter

没有foreach循环的codeigniter单个结果