2010-07-30 101 views
1

我嘗試做以下準備的語句:mysqli的與運營商

$search_query = "SELECT spec, title, quantity, location_to, location_from 
          FROM sm12761.assignments WHERE title = ? LIMIT 0,1 "; 

但它更改爲標題LIKE「&東西%」

我會怎麼做呢?

如果有人能向我展示一個很好的重構版本的查詢。

回答

2

追加%您輸入的字符串調用mysqli_stmt_bind_param()

+2

但是,這不會改變一個'='LIKE' ... – ircmaxell 2010-07-30 13:00:19

+0

你不能這樣做,而不改變查詢。 – 2010-07-30 13:06:29

0

預處理語句上MySQL的一側被預編譯的時候,所以你需要更改查詢結構,能夠使用等。

$search_query = "SELECT spec, title, quantity, location_to, location_from 
         FROM sm12761.assignments WHERE title LIKE ? LIMIT 0,1 "; 
+0

我如何添加%,儘管如此找到通配符 – 2010-07-30 13:31:26

+0

就像上面說的Dennis Haarbrink所說的,在將它綁定到參數之前,您需要將它添加到搜索字符串中。 – Mchl 2010-07-30 13:55:18

+0

對不起剛纔意識到他在說什麼。 – 2010-07-30 14:11:40