merhaba arkadaşlar. mysql den php ile arama yaparken alttaki örnekteki gibi nasıl yapabilirim
veritabandan örnek
1- nuranî bir letafet kesbeder
2-şahitler yapmış
3-külliyatı ve semavatı ve arzı
ben arama yaparken
1-nuranî yerine nurani
2-şahitler yapmış yerine sahitler yada yapmis
3-külliyatı yerine kulliyat gibi türkçe karekter girmeden arasam bulunmasini istiyorum
birileriniz yardımci olursanız çok memnun olurum
teşekkür ederim
Mysql de arama
3
●191
- 29-10-2019, 15:44:41Üyeliği durdurulduMerhaba
O tür aramalarda mysql tablosuna bir alan daha ekleyip bu alana içeriğin metafonunu eklemek ve levenshtein ile arama yaptırmak yazılıma birazcık yapay zeka eklemeyi sağlar. Hani Google bize bunu mu demek istediniz diyor ya... Onun kaynağı bahsettiğim benzerlik algoritması. Çok daha anlamlı, saçma veya tam isabet sonuçlara ulaşabilirsiniz. Metaphone ve levenshtein'ı Google'dan araştırabilirsiniz.
Örn:
SELECT * FROM tablom WHERE levenshtein('$metafon', metafon) BETWEEN 0 AND '$benzerlik' - 29-10-2019, 15:45:36basit bir çözüm önerebilirim baslık gibi bir tag tutabilirsin aynı tabloda başlığı oraya aramada çıkmasını istediğin şekilde yaz bir fonksiyon yaz î => i gibi çevirmeler yap veritabanına içeriği kaydederken başlığı da yazdığın fonksiyondan geçirerek tag olarak veritabanında tutabilirsin