2012-04-20 47 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