我有一個Codeigniter專案,我需要根據下拉選單中提到的年份來獲取預算的利潤總和。
我已經寫了下面提到的代碼。 但是,當我選擇2021選項時,它不作業。 你能告訴我下面的編碼錯誤嗎?
視圖
<form>
<div class="box-body">
<div class="col-md-6"/span>>
<div class="form-group"/span>>
<label for="application"> 選擇年份</label>。
< select class="form-control"/span> name="year" id="SelectOption">
<option value="> 選擇</選項>
<option value="2015"/span>> 2015</option>。
<option value="2016"/span>> 2016</option>
<option value="2017"/span>> 2017</option>
<option value="2018"/span>> 2018</option>
<option value="2019"/span>> 2019</option>/span>
<option value="2020"/span>> 2020</option>。
<option value="2021"/span>> 2021</option>。
</select>/span>
</div>/span>
</div>/span>
</div>/span>
<div class="col-md-6"/span>>
<div class="form-group"/span>>
<label for="application"> 利潤</label>>
< input type="text" id=" profitdiv" name="txtname" class="form-control" readonly>
</div>
</div>/span>
</form>
<script>
document.getElementById('SelectOption') 。 addEventListener('change', function()
{var val = $( "#SelectOption" ).val() 。
console.log(val)
if(val === '2021'/span>) {
$.ajax({
type: "POST"。
url : "< ? php echo base_url(); ? >Reports/get_profit",
data:{val:val},
success: function(data){
$('#profitdiv').html(data)。
}
});
}
}
</script>
Controller
public function get_profit()
{
$this->load-> model('Reports_model')。
$data=$this->Reports_model->select_profit()。
if($data! =='')
{
$this->session->set_flashdata('success', "Profit Show Succesfully") 。
}else{
$this->session->set_flashdata('error', "抱歉,利潤顯示失敗。")。
}
redirect($_SERVER['HTTP_REFERER']) 。
}
模型
function select_profit()
{
$this->db->select_sum("budget_tbl. surplus")。
$this->db->from("budget_tbl") 。
$this->db->like(' surplus','2021-','after')。
$qry=$this-> db->get();
}
uj5u.com熱心網友回復:
你如何在你的資料庫中記錄日期?(格式)
通過你的模型傳遞年份
$year = $ this -> input -> post("val")
$data=$this-> Reports_model-> select_profit($year)。
.
function select_profit($year)
{
$this->db->select_sum("budget_tbl. surplus")。
$this->db->from("budget_tbl") 。
$this->db->where(' surplus >=',$year.'-01-01') 。
$qry=$this-> db->get();
return $qry -> result();
}
uj5u.com熱心網友回復:
完整的代碼
HTML
<form >
<div class="box-body"/span> >
<div class="col-md-6"/span> >
<div class="form-group"/span> >
<label for="example" >Select Year</label >
< select class="form-control"/span> name="year" id="year" >
<option value="" > Select</option >
<option value="2015" >/span>2015</option >
<option value="2016" >/span>2016</option >
<option value="2017" >/span>2017</option >
<option value="2018" >/span>2018</option >
<option value="2019" >/span>2019</option >
<option value="2020" >/span>2020</option >
<option value="2021" >/span>2021</option >
</select >
</div >
</div >
</div >
<div class="col-md-6" >/span>
<div class="form-group"/span> >
<label for="example" >Profit< /label >
< input type="text" id=" profitdiv" name="txtname" class="form-control" readonly >。
</div >
</div >
</form >
<script >
$("#Year").change(function () {
var Year = $(this).val()。
$.ajax({}.
type: "POST"。
url: "<? php echo base_url (); ? >index/get_profit",
資料。{Year: 年份}。
success: function (data) {
$('#profitdiv').html(data)。
}
});
})
</script >
Controller
public function get_profit ( )
{
$this -> load -> model ( 'Reports_model' ) 。
$year = $this -> input -> post ( "val" ) 。
$data = $this -> Reports_model -> select_profit ( $year ); /span>
if ( !empty( $data ) ) {
echo "Profit Show Succesfully" 。
} else {
echo "Sorry, Profit Showing Failed" 。
}
模型
function select_profit($year)
{
$this->db->select_sum("budget_tbl. surplus")。
$this->db->from("budget_tbl") 。
$this->db->where(' surplus >=',$year.'-01-01 00:00:00') 。
$qry=$this-> db->get();
return $qry -> result();
}
uj5u.com熱心網友回復:
在你的模型中,你將不得不將年份與你的日期列相匹配。
在你現有的代碼中,你想要2021年的盈余之和,請改變你的模型的以下行:
$this->db->like(' surplus','2021-','after') 。
to
$this->db->like('name_of_generated_date_column','2021-','after') 。
添加這一行:
return $query-> result()。
要使它對任何選定的年份都有效:
正如上面的帖子中提到的,在你的控制器中提取年份:$year = $this -> input -> post("val")
向/從你的模型發送和檢索資料
$data=$this-> Reports_model-> select_profit($year)。
在模型中:
function select_profit($year)
{
...
$this->db->like('name_of_generated_date_column',$year,'after') 。
...
return $query-> result()。
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/311029.html
標籤:
上一篇:如何在codeigniter4中用幫助器洗掉cookie?[已關閉]
下一篇:Codeigniterhtaccess沒有重定向到localhost/index.php/no-direct-access

