我正在創建一個需要彈塞系統的系統。例如,有權對博客文章的網址「博客標題:這裏」將是:如何「un-slug」標題slu 012
YYYY/MM/DD /對,博客標題,這裏
我已經系統很好建立,如果您的網址匹配多個條目,則會顯示所有匹配條目的摘要,並且如果它只匹配一個條目,則會顯示完整條目等等。我遇到的唯一麻煩就是標題的「不插電」。目前,我只取第一個字到:我的SQL查詢結尾是這樣的:
'AND subject LIKE '.$this->db->escape(substr($title,0,strpos($title,'-')).'%')
麻煩的是,如果貼在同一天兩個職位有相同的單詞開始,單入口永遠無法匹配。此外,如果一篇文章以「A」開頭,而同一天發佈的另一篇文章以字母A開頭,那麼以前的文章就不能單獨進行匹配。
我最初的想法是嘗試匹配段塞每字以LIKE %word%
,雖然這是更好的似乎hackish的,仍然是不完美的(「A毛坯:麻煩!」和「A麻煩蛞蝓「會衝突)。有沒有一個優雅的解決這個問題?
我一定錯過了一些東西,但你爲什麼不只是在做'AND subject ='。 $ this-> db-> escape($ title)。''?爲什麼你需要採取第一個詞,甚至在那裏做一個喜歡? – Fanis 2010-09-10 21:45:09
看看它是如何做到的 - 是否有任何說法反對使用唯一ID作爲URL的一部分? – Tomalak 2010-09-10 21:46:43
@Fanis:因爲擊倒標題將使它不再符合主題。 @Tomalak:我在迴避,因爲我在綜合搜索和閱讀 – Mala 2010-09-10 22:07:46