2013-12-15 55 views
0

我有一個3行文件的表:name,desc,user。基於PHP的網站中的SQL查詢

名稱是文件的名稱,例如:cert1.pdf 說明是文件的說明,例如:年度第一次考試。 用戶是將文件上載到服務器的用戶的名稱,例如:John Doe。

現在我想檢索cert1.pdf的名稱和描述。所以這是我得到:

$sql = "SELECT desc, user 
    FROM files AS f 
    WHERE f.name = 'cert1.pdf'"; 

    $result = mysql_query($sql); 
    if (!$result) { 
     die('Error: ' . mysql_error()); 
    } 

現在一定是非常愚蠢的,但我一直有這個錯誤消息:

您的SQL語法錯誤;檢查 對應於你的MySQL服務器版本正確的語法使用 附近手冊「說明,用戶從文件中爲F WHERE f.name =‘cert1.pdf’」在1號線

任何想法的我在這裏做錯了什麼?提前致謝。

回答

2

遞減是一個保留的話可以嘗試在遞減內反引號(')的同一鍵〜 而不是遞減 用戶可能是保留字太

嘗試

SELECT `desc`,`user` 
+0

斑點。我會避免完全調用列保留字。 – Popnoodles

+0

popnoodles你是怎麼得到後面的蜱在評論中顯示的? –

+0

test comment \'desc \' –

2

爲了展示Tin Tran用反引號逃避「desc」的答案的一個例子。

$sql = "SELECT `desc`, `user` 
    FROM files AS f 
    WHERE f.name = 'cert1.pdf'"; 

    $result = mysql_query($sql); 
    if (!$result) { 
     die('Error: ' . mysql_error()); 
    }