2011-01-19 71 views
0

我有以下查詢:未知列「日期」在「where子句」

select * from invoice WHERE Date >= '$date' AND status='$status' 

它返回一個錯誤:

Unknown column 'Date' in 'where clause' 

我不是在PHP或MySQL不太好,但我沒有看到任何錯誤。可能一切都錯了。我需要幫助!

編輯:

$var = $_GET['date1_year'] ."-" . $_GET['date1_month'] ."-" . $_GET['date1_day']; 
$query = "select * from invoice WHERE DateOfCreation >= '$var' AND status='$status'"; 

而且ofcourse它登錄(認證),並正在與沒有錯誤執行,但沒有正確的結果無論是。我的DateOfCreation是一個DATE類型,實際上有$ _GET變量。我希望它在$ var之前搜索所有記錄。

+4

表中是否有'Date`列...?它可以拼寫`date`而不是`Date`嗎?請提供更多信息。如果它不是一個拼寫/表沒有列,那麼我可以想到也許與Date函數衝突。 – 2011-01-19 18:35:24

回答

1
select * from invoice WHERE DateOfCreation >= '$date' AND status='$status' 

儘管它可行,但我鼓勵您查看參數化查詢以防止SQL注入攻擊。看到這裏:How can I prevent SQL injection in PHP?

0

for all records before $var

所以,你的意思是呢? (改變> =到<)

$var = $_GET['date1_year'] ."-" . $_GET['date1_month'] ."-" . $_GET['date1_day']; 
$query = "select * from invoice WHERE DateOfCreation < '$var' AND status='$status'"; 

有了您的編輯,我想就沒了這個錯誤?

Unknown column 'Date' in 'where clause'

相關問題