Reputation: 51
I want to get price data based on the previous month's id or row before which is in id_head_report table_report
+-----------------------------------------------------------------------+
| id_report | id_head_report | date_report | price_now | price_previous |
+-----------------------------------------------------------------------+
| 1 | 3 | 2019/01/30 | 55,000 | |
+-----------------------------------------------------------------------+
| 2 | 3 | 2019/02/29 | 1,000 | 55,000 |
+-----------------------------------------------------------------------+
| 3 | 4 | 2019/01/30 | 1,000 | |
+-----------------------------------------------------------------------+
| 4 | 4 | 2019/02/29 | 2,000 | |
+-----------------------------------------------------------------------+
controller_report
$id = $this->report_model->get_by_id($id);
$price_now = $this->db->query("SELECT `price_now ` FROM `table_report` Where `date_report`=".date('M Y d', strtotime('-1 months'))." AND `id_head_report`=$id)->row();
$row = $this->report_model->get_by_id($id);
if ($row) {
$data = array( 'button' => 'Update','action' =>
site_url('controller_report/update_report'),
'id_report ' => set_value('id_report ', $row->id_report ),
'id_head_report ' => set_value('id_head_report ', $row->id_head_report ),
'date_report' => set_value('date_report', $row->date_report),
'price_now' => set_value('price_now', $row->price_now),
'price_previous' => $price_previous,
}
);
view_report
<td align='right'>
<label for="decimal"><?php echo form_error('price_previous') ?></label>
<input style="background-color:#FFFF42" type="text" class="form-control" name="price_previous" id="price_previous" placeholder="price_previous" value="<?php echo $price_previous; ?>" />
</td>
update for price previous month's id, but this doesn't work there is another solution?
Upvotes: 0
Views: 60
Reputation: 885
$id = $this->report_model->get_by_id($id);
$price_now_query = $this->db->query("SELECT `price_now ` FROM `table_report` Where `date_report` IS BETWEEN (CURRENT_DATE() - INTERVAL 1 MONTH) AND CURRENT_DATE() AND `id_head_report`=$id");
// CURRENT_DATE() - INTERVAL 1 MONTH - will get previous-month data
$price_now = []
if ($price_now_query && $price_now_query->num_rows() > 0) {
$price_now = $price_now_query->row();
}
$row = $this->report_model->get_by_id($id);
if ($row) {
$data = array( 'button' => 'Update','action' =>
site_url('controller_report/update_report'),
'id_report ' => set_value('id_report ', $row->id_report ),
'id_head_report ' => set_value('id_head_report ', $row->id_head_report ),
'date_report' => set_value('date_report', $row->date_report),
'price_now' => set_value('price_now', $row->price_now),
'price_previous' => $price_previous,
}
);
Upvotes: 1