2011-05-18 21 views
2

這個SQL工作在phpMyAdmin,但笨PHPDAYNAME(CURDATE())在笨PHP不工作

function getProgramsHomepage(){ 
    $data = array(); 
    $this->db->select("p_name,p_start"); 
    $this->db->where('p_channel', 'tv'); 
    $this->db->where('p_day', DAYNAME(CURDATE())); 
    $this->db->order_by('id','asc'); 
    //$this->db->limit($limit); 
    $Q = $this->db->get('programs'); 
    if($Q->num_rows() > 0){ 
     foreach($Q->result_array() as $row){ 
      $data[] = $row; 
     } 
    } 
    $Q->free_result(); 
    return $data; 
} 

回答

1

DAYNAME(CURDATE())將嘗試執行PHP函數CURDATEDAYNAME,您需要將它們作爲字符串以CI不會轉義的方式傳遞。這應做到:

$this->db->where('p_day = DAYNAME(CURDATE())'); 
0

您必須編寫 'DAYNAME(CURDATE())' 不工作,作爲一個字符串

+0

我做 「DAYNAME(CURDATE())」 仍然沒有運氣 – ktm 2011-05-18 07:30:20

+0

什麼 print_r的輸出($這個 - > DB-> last_query()); – 2011-05-18 07:33:25