簡體   English   中英

PHP MySQL比較日期是否相等

[英]php mysql comparing dates for equality

我正在使用php訪問2表中的字段。

這部分工作正常

   $sql=mysql_query('SELECT * FROM user_weeks WHERE user_id = '.$_SESSION["user_id"].' ORDER BY date DESC') or die(mysql_error());

我這樣做可以很好地約會

    $infodate=$info["date"];
    echo $infodate;

但是我想把那個日期和這樣比較它在另一個表中

$sql2=mysql_query('SELECT * FROM weekly_ROI WHERE date = '.$infodate.' ') or die(mysql_error());

但是,這沒有結果。 我是菜鳥,對不起,如果此代碼是如此“ 2000及之后”

假設兩個日期字段均為日期類型,則需要將名稱日期用反引號引起來,因為日期是保留字,並且需要將日期用引號引起來。

$sql2=mysql_query('SELECT * FROM weekly_ROI WHERE `date` = "'.$infodate. '"') or die(mysql_error());

另外,不建議使用mysql_ *函數。 您需要研究使用PDO或mysqli查詢數據庫。

date是保留字,用於包裝反引號`date

$sql2=mysql_query('SELECT * FROM weekly_ROI WHERE `date` = "'.$infodate.'" ') or die(mysql_error());

大概您在查詢中使用了標准的yyyy-mm-dd類型的日期字符串,這意味着您在日期值周圍缺少引號:

$sql2=mysql_query('SELECT * FROM weekly_ROI WHERE date = '.$infodate.' ')
                                                         ^--here          ^-- here

您的查詢看起來像

... WHERE date = 2013-12-18

並作為簡單的數學減法求值:

... WHERE date = 1983

您需要引號:

.... date = "' . $infodate . '"');
            ^--               ^--

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM