sql >> Database teknologi >  >> RDS >> Mysql

php/Codegniter-- Sådan sammenlignes kun dato ved at ekskludere tid

Problemet er, at din kode genererer en defekt SQL-syntaks, som fejlen viser.

Jeg er ikke ekspert med codeIgniter, men her er, hvordan man laver en normal forespørgsel direkte, det er sandsynligvis det, du vil gøre:

function check_existing_User_weightStatus($u_id)
 {
    $today = date('Y-m-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;
    } 
 }

Fejlen i din kode opstår på denne linje

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

Jeg er ret sikker på, at det ikke er sådan, hvor-klausulen vil blive gjort, så du kan slå op i codeIgniter-dokumenterne! at finde den rigtige måde at gøre det på! (Du fortæller ikke, hvor-klausulen skal bruge AND , OR , osv.. operatører)



  1. Skrivebeskyttet Oracle Home

  2. Sådan fungerer UTC_DATE() i MariaDB

  3. ved at bruge underforespørgsel i stedet for tabelnavnet

  4. PostgreSQL:vis ture inden for en afgrænsningsramme