php / Codeigniter- Как сравнивать только дату, исключая время

У меня есть поле в моей таблице db как creater_date как datetime и имеет значения, хранящиеся в форме 2013-09-13 02:12:44

Теперь мне нужно сравнить сегодняшнюю дату (нет времени) с creater_date таблицы creater_date .

Я попробовал этот ниже код, но он показывает ошибку:

  function check_existing_User_weightStatus($u_id) { $this->load->database(); $this->load->helper('date'); $today = date('Ym-d'); $array = array('creater_id' => $u_id,DATE('created_date') => $today); $this->db->where($array); $query = $this->db->get('user_weight'); if ($query->num_rows() > 0) { return true; } else { return false; } } 

Получение ошибки:

  A Database Error Occurred Error Number: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '13 Sep 2013 02:48:27 +0530Asia/Calcuttaam30Asia/Calcutta13_13am30Asia/Calcutta '' at line 4 SELECT * FROM (`user_weight`) WHERE `creater_id` = '3235' AND `2013-09-13T02:48:27+05:30Fri,` 13 Sep 2013 02:48:27 +0530Asia/Calcuttaam30Asia/Calcutta13_13am30Asia/Calcutta '2013-09-13' Filename: D:\xampp\htdocs\webapp\system\database\DB_driver.php Line Number: 330 

я не хочу сравнивать со временем, я только хочу объединиться с сегодняшней датой. Поле created_date (например, 2013-09-13 02:12:44) имеет типы данных datetime с некоторыми значениями времени. Но я хочу сравнить только с датой

Related of "php / Codeigniter- Как сравнивать только дату, исключая время"

Проблема в том, что ваш код генерирует неисправный синтаксис SQL, как показывает ошибка.

Я не эксперт с codeIgniter, но вот как сделать обычный запрос напрямую, это, вероятно, то, что вы хотите сделать:

 function check_existing_User_weightStatus($u_id) { $today = date('Ym-d'); $this->load->database(); $query = $this->db->query("SELECT * FROM `user_weight` WHERE `creater_id` = '$u_id' AND DATE(`created_date`) = '$today'"); if ($query->num_rows() > 0) { return true; } else { return false; } } 

Ошибка в вашем коде происходит в этой строке

 $array = array('creater_id' => $u_id,DATE('created_date') => $today); 

Я уверен, что это не так, как будет сделано предложение where, поэтому вы можете найти документы codeIgniter! найти правильный способ сделать это! (Вы не указываете, где предложение использовать AND , OR и т. Д. Операторов)