2013-02-26 2 views
0

날짜 열 invoiceDate가있는 테이블이 있습니다. 그에서 28-02-13날짜 범위 사이에 레코드를 찾을 때 codeigniter에서 빈 레코드가 반환됩니다

로를 invoiceDate의 값이 기록은 지금은 날짜 범위 사이에 기록을 가져 오기 위해 아래의 사용이 :

  $this->db->select('*'); 
    $this->db->from('salesinvoices'); 
    $dateone=date('Y-m-d',strtotime('26-02-13')); 
    $datetwo=date('Y-m-d',strtotime('12-03-13')); 
    $this->db->where('invoiceDate >=', $dateone); 
    $this->db->where('invoiceDate <=', $datetwo); 
    $query = $this->db->get(); 
    $results = $query->result(); 
    print_r($results); 

난 항상 얻을 빈 기록 :(

+0

컬럼 날짜 또는 날짜 시간의 유형은 무엇입니까? –

답변

1

나는 당신의 코드와 생성 된 쿼리가 문제가 misinterpr하는 한 strtotime에 같은

SELECT * FROM "salesinvoices" 
WHERE "invoiceDate" >= '2026-02-13' 
AND "invoiceDate" <= '2012-03-13' 

그래서 보이는이었다 시도 날짜를 설정합니다.

+0

안녕하세요. 아래 내 대답을 참조하십시오. 당신의 도움을 주셔서 감사합니다 :) – beNerd

3

내 문제의 근본을 발견했습니다. Strtotime은 대시를 빼기 부호로 간주하고 작업을 수행합니다. 나는 이것을 사용하여 작업을했다 :

date('Y-m-d',strtotime(str_replace('-', '/', '2026-02-13'))); 

그래서 나는 /를 모두 대시로 바꿨다. 희망이 사람을 도움이됩니다.

관련 문제