Php 该表在codeigniter?中的数据行中显示一列数据?
有人请帮助我,我用的是带mvp的CodeIgniter程序。我有这样一个数据库: 如果我想在这样的表视图中显示数据,是否可能 我只能在某个日期向您显示,当在另一个日期id\u状态检索数据时,一切都不工作 控制器时,只有一个日期Php 该表在codeigniter?中的数据行中显示一列数据?,php,codeigniter,Php,Codeigniter,有人请帮助我,我用的是带mvp的CodeIgniter程序。我有这样一个数据库: 如果我想在这样的表视图中显示数据,是否可能 我只能在某个日期向您显示,当在另一个日期id\u状态检索数据时,一切都不工作 控制器时,只有一个日期 public function status() { $tanggal1 = '2017-03-28'; $data['status'] = $this->M_Reports->status($tanggal1); $this-&g
public function status()
{
$tanggal1 = '2017-03-28';
$data['status'] = $this->M_Reports->status($tanggal1);
$this->load->view('homepage/template');
$this->load->view('report/status', $data);
}
型号:
public function status($tanggal1) {
$sql = "SELECT operasional.id_ops, operasional.id_status, operasional.tanggal, peralatan.nm_peralatan FROM operasional INNER JOIN peralatan ON operasional.id_peralatan = peralatan.id_peralatan WHERE tanggal='$tanggal1' ORDER BY id_ops";
return $this->db->query($sql)->result();
}
和视图:
<?php
$start = 0;
foreach($status as $data) {
?>
<tr>
<td><?php echo ++$start ?> </td>
<td><?php echo $data->nm_peralatan ?></td>
<td><?php echo $data->id_status ?></td>
<td><?php echo $data->tanggal ?></td>
</tr>
<?php
}
?>
您的模型函数应该是这样的
public function status($top_of_date)
{
// This will get all dates
$dates=$this->db->distinct()->select('tanggal')->from('operasional')->get()->result_array();
// This will get all patients / peralatan
$patients=$this->db->distinct()->select('id_peralatan')->from('operasional')->get()->result_array();
// Loop through peralatan
for($i=0;$i<count($patients);$i++)
{
$st=$this->select('id_peralatan')->from('operasional')->WHERE('id_peralatan',$patients[$i])->get()->result_array();
// Start Creating an array for this index
$data[$i]=array(
'id_peralatan'=>$st[0]
);
// loop through dates
for($j=0;$j<count($dates);$j++)
{
//if date is greater than top of date
if($dates[$i]>$top_of_date)
{
$st=$this->db->select('id_status')->from('operasional')->WHERE('tanggal',$dates[$i])->get()->result_array();
// Create index and save the status
$data[$i]['top_of_date']=$st[0]['id_status'];
}
elseif($dates[$i]<$top_of_date)
{
$st=$this->db->select('id_status')->from('operasional')->WHERE('tanggal',$dates[$i])->get()->result_array();
// Create index and save the status
$data[$i][$dates[$i]]=$st[0]['id_status'];
}
}
}
return $data;
}
你的模型函数应该是这样的
public function status($top_of_date)
{
// This will get all dates
$dates=$this->db->distinct()->select('tanggal')->from('operasional')->get()->result_array();
// This will get all patients / peralatan
$patients=$this->db->distinct()->select('id_peralatan')->from('operasional')->get()->result_array();
// Loop through peralatan
for($i=0;$i<count($patients);$i++)
{
$st=$this->select('id_peralatan')->from('operasional')->WHERE('id_peralatan',$patients[$i])->get()->result_array();
// Start Creating an array for this index
$data[$i]=array(
'id_peralatan'=>$st[0]
);
// loop through dates
for($j=0;$j<count($dates);$j++)
{
//if date is greater than top of date
if($dates[$i]>$top_of_date)
{
$st=$this->db->select('id_status')->from('operasional')->WHERE('tanggal',$dates[$i])->get()->result_array();
// Create index and save the status
$data[$i]['top_of_date']=$st[0]['id_status'];
}
elseif($dates[$i]<$top_of_date)
{
$st=$this->db->select('id_status')->from('operasional')->WHERE('tanggal',$dates[$i])->get()->result_array();
// Create index and save the status
$data[$i][$dates[$i]]=$st[0]['id_status'];
}
}
}
return $data;
}
为什么不呢,您的视图基于您从数据库中获得的内容。您只需创建一个查询即可从db表中获取所需的索引。视图中的日期是静态的还是动态的?@georoot当我必须在不同日期时循环id_状态时,我感到困惑。帮助me@MalikMudassar我希望日期将是动态的,我将在查询中使用between to long来撰写答案,让我试试为什么不,您的观点是基于您从数据库中获得的信息。您只需创建一个查询即可从db表中获取所需的索引。视图中的日期是静态的还是动态的?@georoot当我必须在不同日期时循环id_状态时,我感到困惑。帮助me@MalikMudassar我希望日期将是动态的,我将使用QueryTo long中的between来撰写答案,让我试试看@Malik先生,我会试试这个;)亲爱的@Malik Mudassar先生,我在第$st=$this->db->select('id_peralatan')->from('operasional')->WHERE('id_peralatan',$patients[$I])->get()->result_array()行出现错误;因为$Patients仍然是数组,所以如果需要长时间讨论,请从
operasional
中选择id\u peralatan
=array
这样的错误。请加入mesorry先生的聊天@malik我不能在聊天中写coment,因为我没有20个声誉谢谢@malik先生,我会试试这个;)亲爱的@Malik Mudassar先生,我在第$st=$this->db->select('id_peralatan')->from('operasional')->WHERE('id_peralatan',$patients[$I])->get()->result_array()行出现错误;因为$Patients仍然是数组,所以如果需要长时间讨论,请从operasional
中选择id\u peralatan
=array
这样的错误。请加入mesorry先生的聊天@malik我不能在聊天中写coment,因为我没有20个名声