2012-07-05 55 views
1

我使用jQuery的日期選取器在我笨項目JQuery的日期選擇器使用CodeIgniter

我在我看來

<script> 
    $(function() { 
     $("#from-datepicker").datepicker(); 
    }); 
    </script> 

    <script> 
    $(function() { 
     $("#to-datepicker").datepicker(); 
    }); 
    </script> 

    <div style="float:left; width:330px"> 
    <input name="from-date" type="text" id="from-datepicker" /> 
    </div> 

    <div style="float:left; width:330px"> 
    <input name="to-date" type="text" id="to-datepicker" /> 
    </div> 

這樣使用它在我的控制器我有

public function titlesDownloads(){ 
    if($_POST){ 
     $form = $this->input->post(); 
     $boxes = $form['boxes']; 
     $titles = $form['titles']; 
     $from_date = date('Y-m-d',strtotime($form['from-date'])); 
     $to_date = date('Y-m-d',strtotime($form['to-date'])); 
     $data['titles_downloads'] = $this->Statistic_model->getTitlesDownloads($boxes, $titles, $ipsegments, $from_date, $to_date); 
     $data['from_date'] = $from_date; 
     $data['to_date'] = $to_date; 
     $this->load->view('statistic/titles-downloads', $data); 
    } 
} 

在我的模型我有功能得到下載的計數爲

public function getTitlesDownloads($boxes, $titles, $from_date, $to_date){ 
    $query = $this->db->select('mc_boxes_idmc_boxes, mc_boxes.location, idtitle_history, titles.title, COUNT(mc_boxes_has_downloads.idtitle_history) AS Titles_Downloads ') 
      ->from('mc_boxes_has_downloads') 
      ->join('mc_boxes', 'mc_boxes_has_downloads.mc_boxes_idmc_boxes = mc_boxes.idmc_boxes', 'left') 
      ->join('titles', 'mc_boxes_has_downloads.idtitle_history = titles.idtitles', 'left') 
      ->where_in('mc_boxes_idmc_boxes', $boxes) 
      ->where_in('idtitle_history', $titles) 
      ->where('actiontime >=', $from_date) 
      ->where('actiontime <=', $to_date) 
      ->group_by('mc_boxes_idmc_boxes') 
      ->group_by('idtitle_history') 
      ->get(); 
    $data = $query->result_array(); 
    return $data; 
} 

現在,對於特定的標題id = 7,在6月份有4個下載。但是當我運行查詢時,它返回三個。最後一次下載是在6月30日被跳過。

我認爲日期選擇器正在跳過所選日期的上限和下限。儘管在我的查詢中我寫了> = startdate和> = enddate。

爲什麼它跳過最後的日期?

有什麼想法?

感謝

回答

1

由於您只傳遞一個日期而沒有時間,它可能是假設時間爲午夜。因此,6月30日的午夜時間不能顯示Jun-30的任何內容。

你最好的選擇可能是添加一天,並使用少於發現前一天發生的任何事情。

+0

我怎樣才能打發時間呢? – 2012-07-05 14:20:13

+0

用戶是否在日期選擇器中選擇時間?根據你如何設置日期選擇器,它不會出現這種情況。因此,您可以在提交表單之前對其進行修改,或者在處理帖子時對其進行處理。 – 2012-07-05 14:29:33

+0

沒有時間不摘 – 2012-07-05 14:31:42