php
  • mysql
  • 2012-11-29 34 views 1 likes 
    1

    下面的查詢工作並返回結果可變量在MySQL查詢中使用WHERE後

    $query = "SELECT * FROM table WHERE District = '" . $var . "' ORDER BY Form_Date DESC"; 
    

    在那裏,如果我有一個變量替換單詞「區」,這是行不通的

    $query = "SELECT * FROM table WHERE '" . $distvar . "' = '" . $var . "' ORDER BY Form_Date DESC"; 
    

    這個有什麼問題,我怎樣才能使它工作?

    回答

    5

    刪除周圍您是測試場的報價,或與反引號替換它們給你從MySQL解析器保存誤認爲一個潛在的保留字:

    $query = "SELECT * FROM `table` WHERE `" . $distvar . "` = '" . $var . "' ORDER BY Form_Date DESC"; 
    
    +3

    或者,可以使用反引號'\''。 – vstm

    +0

    輝煌,反作用力。非常感謝 –

    1

    試試這個:

    $query = "SELECT * FROM table WHERE `" . $distvar . "` = '" . $var . "' ORDER BY Form_Date DESC"; 
    

    $query = "SELECT * FROM table WHERE " . $distvar . " = '" . $var . "' ORDER BY Form_Date DESC"; 
    
    +1

    非常感謝。它爲我工作很好。 –

    相關問題