另一個腦筋急轉彎。一個非常奇怪的撇號MySQL PHP錯誤
這不是通常的「但撇號打破了我的查詢」,因爲我知道所有關於逃避和消毒,所以我會得到它的權利。
很多很多東西都存儲在一個名爲「刺客」和「寶貝」的數據庫中,結果是「刺客」和「寶貝\」,恢復很好,但通過文本搜索是......痛苦。
LIKE「%Babe \'s%」沒有結果,「%Babe \'s」沒有結果,「%Babe \'s」沒有結果。
但如果我直接去服務器,那麼他們都會產生結果。
換句話說,完全未編輯的SAME查詢將直接在MySQL引擎中工作,但通過php的mysql api發送,它不會產生匹配結果。
任何想法可能導致這種情況? (我已經提前調查的斜線等100倍的量,是有一個字符集問題「
很多很多很多很多的感謝
編輯:?
我想我最好讓自己更明確:
"SELECT title FROM games WHERE title LIKE "%assassin\\\'s%";
(由於SQL應該逃脫撇號和斜槓會變成被存儲的斜線之一,因爲我們在這個例子中尋找「刺客\信條」)
EDIT2 :播種我們有figu紅色出現這是由於由於消毒不良導致實際數據庫中逃脫逃生。目前我正在嘗試清理數據庫和輸入法。
edit3:它似乎像魔術引號在某種程度上...我發誓,被關閉!然而,並非如此。適用於本網站的數據庫包裝器具有清潔事件並且也是導致問題的預清理。那現在已修正,現在我運行一個腳本,(希望)淨化分貝......
? – Rwky 2010-06-21 16:59:26
mysql_query()php的標準。 – Dorjan 2010-06-21 17:02:14