所以我在personaldreamjournal.com上写了一个简单的日记/日志在线应用程序。您可以在演示模式下登录,以使用名称来宾和密码用户进行测试。用mysql全文搜索忽略#字符
它使用LIKE在日记中对单词进行全文搜索。我想添加允许标签容易标记条目的功能。就像有人输入#workout一样,它会返回所有带#号标签的条目。但显然不是那么容易,因为它似乎忽略了标签。 (不知道为什么他们会忽略文本框中的任何字符??,但生活也是如此)。
因此,带有单词锻炼的所有条目都会被返回,因为#被忽略。 我只是想确认,从我迄今为止搜索到的东西,因为没有具体提到#字符。
因此,我假设#是一个特殊的字符,由于某种原因被忽略? 和那我改变它我必须改变MYSQL配置的地方? #字符究竟在哪里?
任何帮助确认即时消息说的是真实的,以及如何允许#字符计入返回结果,赞赏。
更新: 下面是我使用的实际代码。所以我没有使用LIKE
$query_Recordset1 = "SELECT *, MATCH(`scroll`.text) AGAINST (+'$searchstring_Recordset1' IN BOOLEAN MODE) AS score FROM scroll WHERE MATCH(`scroll`.text) AGAINST('+$searchstring_Recordset1' IN BOOLEAN MODE) having score > 0.2 AND user = '$username' ORDER BY score DESC";
感谢詹姆斯的真棒回应。如果符合我的需求,我将实施您的代码版本并回报。赞赏。 –
@NormanBird没问题。 :) – James
so @James,好像我已经在使用类似于您所建议的内容了,这似乎是最佳做法,可能是为什么我使用它:o),现在仍然面临如何在搜索中使搜索符合hashtag# ,现在它忽略它。我必须改变某个地方,不知道是什么。 –