2013-08-20 61 views
1

我是新來的PHP,在我的SQL表我有這些列中的一行:選擇行,其中字段名稱是啓用和值爲true

id, custid, name, value 

ID是自動遞增,客戶ID是獨特的價值,名稱是啓用(狀態參數)並將值設置爲true或false。

現在我只想在一個PHP文件以選擇

$sql = 'cu_id FROM table WHERE name = 'enable' AND value = 'true'' ; 

的情況下,但我的PHP文件說,行有語法錯誤,在啓用。

任何人都可以請看看它是什麼:)

回答

0

在雙大衣與傳遞您的查詢,這是最好的做法

$sql = "cu_id FROM table WHERE name = 'enable' AND value = 'true'" ; 
+0

不確定是否應該引用。 Tinyint 1/0? – allen213

0

使用雙引號,

$sql = "cu_id FROM table WHERE name = 'enable' AND value = 'true'"; 

但做的最好的方法是使用事先準備好的聲明從sql注入,以避免。

0

您在查詢中有以下錯誤:

  1. 使用的是單引號內的單引號。您可以通過對查詢字符串進行雙引號包裝併爲列值保留單引號來解決此問題。或者,您可以選擇使用反斜線將值中使用的單引號轉義,例如\'enable\'
  2. 你的表名是MySQL的一個保留字,即table。當您使用的MySQL reserved words一個你需要用反引號e.g `table`引用它們。

請嘗試以下方法:

$sql = "cu_id FROM `table` WHERE name = 'enable' AND value = 'true'"; 
0

使用雙引號,而不是使用真假,你可以使用1和0。默認值爲0或1,如你所願,這樣的查詢將看起來像。您也可以將value替換爲status

$sql = "select cu_id FROM table WHERE name = 'enable' AND status = 0"; 
相關問題