2012-04-20 99 views
-4

下面的代碼顯然會搜索與查詢變量類似的結果,但是搜索確切結果而不是「like」的SQL命令是什麼?什麼是正確的查找精確匹配的sql命令?

$query = "SELECT languages.language FROM languages WHERE language LIKE '%".$name."%'"; 
+3

**警告**您的代碼容易受到sql注入攻擊。 – 2012-04-20 19:39:40

+0

@Radu:How * do *我爲PHP中的變量賦值? – 2012-04-20 19:43:52

+0

@RobertHarvey - 一個更好的問題是我如何在php中聲明一個變量? – 2012-04-20 19:44:20

回答

5

你試過了=操作和移除%外卡?

+0

+1:什麼!?你怎麼知道這一個!?你是超級明星;-) – 2012-04-20 19:43:11

1

編輯:雖然我回答你問什麼,值得指出的是,正如其他人所說,你的代碼很容易受到SQL注入式攻擊:)

對於準確匹配:

$query = "SELECT languages.language FROM languages WHERE language ='".$name."'"; 

對於非匹配項:

$query = "SELECT languages.language FROM languages WHERE language <> '".$name."'"; 
+1

**警告**你的代碼容易受到SQL注入攻擊。 – 2012-04-20 19:41:09

+0

我知道,但我只是做了他所要求的,我已經放了一個免責聲明:) – mattytommo 2012-04-20 19:42:38