我在一个多语言网站(目前只有英语和土耳其语)中进行搜索。
只要访问者使用正确的语言字符,搜索出来就会得到正确的结果。
例如
- 对于单词“Moudle”(英语),类似 sql 查询的子句就像“%Moudle%”,它工作正常。
- 对于单词“modül”(土耳其语),类似 sql 的子句就像“%modül%”,它工作正常。
我的问题是,对于土耳其语,如果我使用“modul”而不是“modül”,它就不起作用。只是因为“ü”。
即使我使用英语中相同的对应字符而不是原始字符,有什么方法可以从数据库中获取结果?
表的结构是
CREATE TABLE IF NOT EXISTS post_lang (
id bigint(20) NOT NULL AUTO_INCREMENT,
post_id bigint(20) NOT NULL,
ln enum('en','tr') NOT NULL,
title text CHARACTER SET utf8 COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (id)
);
INSERT INTO post_lang (id, post_id, ln, title, content, doc) VALUES
(1, 1, 'en', 'How can I create a new module?'),
(2, 1, 'tr', 'Nasıl yeni bir modül yaratırım?');