【问题标题】:Codeigniter - how to display data from the database where the 'where id = $ value'Codeigniter - 如何显示来自“where id = $ value”的数据库中的数据
【发布时间】:2014-11-07 07:21:18
【问题描述】:

我尝试使用 codeigniter 进行年度报告。 期望输出如下:
第 01 个月 = 0 个数据,第 02 个月 = 10 个数据并继续......

控制器

$this->load->model('dash_model');

$data = array();
$data['mont'] = array$this->dash_model->monthreport();

$this->output->enable_profiler(TRUE);
$this->parser->parse('blank.htm', $data);

当我尝试在没有 CodeIgniter 的情况下用 PHP 编写代码时,它确实有效。

for($i=1; $i<=12; )
{
    $month=array("","01","2","3","4","5","6","7","8","9","10","11","12");
    $m = $month[$i];

    $query = "SELECT count(*) as trans_email 
              FROM trans_email 
              WHERE lup LIKE '2014-$m%' ";
    $qu = mysql_query($query);

    $data=mysql_fetch_array($qu);
    $komp = $data['trans_email'];
}

我尝试实现上面的代码来建模 CodeIgniter

破折号模型

 for($i=1; $i<=12; )
 {
     $month=array("","01","2","3","4","5","6","7","8","9","10","11","12");
     $m = $month[$i];
     $query2=$this->db->query("SELECT count(*) as rr 
                               FROM trans_email 
                               WHERE lup LIKE '2014-$m%' ");

     $resultArray[$i]=$query2->result_array();

     $i++;
 }
 return $resultArray;

查看

{mont}
month {rr}
{/mont}

结果并不如预期。

如何返回数组中多达 12 次并产生 12 个输出的查询,如下所示:
第 01 个月 = 0 个数据,第 02 个月 = 10 个数据并继续......

如何查询我有一个循环,我可以把它的值扔到控制器中

【问题讨论】:

  • 您期望的结果是什么,现在返回的结果是什么?
  • 问这个问题:如何将循环查询返回到控制器@SimonFredsted
  • 您将代码放在模型的什么位置?

标签: php mysql codeigniter


【解决方案1】:

我会这样做:

 $months = array(
     '01',
     '02',
      ...
     );
 $this->db->select('count(*) as rr');
 foreach($months as $month){
         $this->db->like('lup', $month);
 }
 $query = $this->db->get('trans_email')

【讨论】:

    猜你喜欢
    • 2022-01-06
    • 2021-03-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-22
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多