2012-11-14 30 views
0

我想了解爲什麼這個SQL語句不工作,一旦我運行腳本。phpMyAdmin和PHP腳本之間的不同的SQL行爲

如果我在phpMyadmin中手動查詢,它會返回正確的結果;但一旦腳本以相同的查詢運行,查詢就不會返回任何內容。

這是我的查詢:

BTW:$heute是這樣的:

$date_array = getdate(); 
$heute = $date_array[mday]."/".$date_array[mon]."/".$date_array[year]; 


$sql = "SELECT email, was, wo, entfernung FROM jobsperemail WHERE haufigkeit='1' AND WHERE bestatigt='ja' AND last_sent!='$heute'"; 

這是我的DB模式:

my DB table schema

而且這些表中的值:

the table with values

有人可以幫我嗎?

+4

在查詢中有兩個'WHERE'關鍵字。刪除第二個。 –

+1

不要將日期存儲爲'VARCHAR',將它們存儲爲'DATE's。它幾乎可以通過各種可能的方式提高效率。排序,字段大小,可讀性,可移植性,您可以使用本機日期函數而無需im /顯式轉換等。 – Sammitch

+0

@MikeChristensen非常感謝。請寫下你的句子作爲答案,我會檢查最好的。 :) – doniyor

回答

3

您的SQL查詢語法錯誤:

SELECT email, was, wo, entfernung FROM jobsperemail WHERE haufigkeit='1' AND WHERE bestatigt='ja' AND last_sent!='$heute' 

你需要刪除第二WHERE關鍵字,因爲這樣的:

SELECT email, was, wo, entfernung FROM jobsperemail WHERE haufigkeit='1' AND bestatigt='ja' AND last_sent!='$heute' 
+0

更好!感謝:D – doniyor

0

這是因爲你在查詢中有php變量。

腳本內的PHP變量($ HEUTE)被解釋,但在phpMyAdmin它不是

如果我能幫助你進一步只是讓我知道

+0

謝謝,但我當然會替換phpadmin中的變量heute。但問題解決了。 :D多謝 – doniyor

相關問題