Fulltext - مشکل در جستجوی فارسی

Jaf@r

Member
من یه جستجوی ساده ساختم با استفاده از امکان fulltext مای اس کیو ال و دستور match against . در مورد جستجوی کلمات انگلیسی کار میکنه ولی فارسی اصلا نتیجه ای بر نمی گردونه.
دوستان با تجربه اگه میدونن کمک کنن.
 

I.NoBody

Active Member
Collation رو utf-8 بذار. اگه نشد، باید دنبال یونیکد کردن، یا روش های دیگه باشی.
البته معمولاً این مشکل برای کلمات ناقص فارسی هست نه برای کلمات کامل.
مثلاً شما احتمالاً می تونی با تایپ کلمه مجتبی دنبال اون بگردی ولی با تایپ کلمه مجتب پبداش نمی کنی
 

hamed1487

New Member
کسانی که با fulltext کاراکترهای فارسی در mysql مشکلی دارند این مراحل را طی کنند، به لطف خدا درست میشود:

1- ورژن mysql: متاسفانه بعضی وقتها نسخه های جدید بهتر از نسخه های قبلی نیستند. در این مورد که این طور است. من خودم با آخرین ورژن mysql (تا این زمان) که 5.5 است، برای استفاده از fulltext جهت کاراکترهای فارسی به مشکل برخوردم. ولی با نصب مجدد mysql منتها با نسخه 5.0.17 مشکل از میان رفت. (برای یافتن نسخه های قدیمی تر به آرشیو سایتهای مختلف و سی دی های قدیمیتان و ... مراجعه کنید).
2- بعد از آنکه ورژن را عوض کردید، حتماً ایندکس قبلی را حذف کنید، تاکید میکنم ... حتماً ایندکس قبلی را حذف کنید!
3- سپس collation فیلد مورد نظر را به utf8_persian_ci تبدیل کنید ( بهتر است collation جدول و بانک اطلاعاتی را نیز به utf8_persian_ci تغییر دهید).
4- مجدداً فیلد مورد نظر را با fulltext ایندکس نمایید.

برای آنکه ببینید مشکل حل شده است، ابتدا جستجو را با استفاده از کاراکترهای لاتین انجام دهید، و سپس اگر نتیجه داد، جستجو را با کاراکترهای فارسی به عمل آورید.
 

BehrouzPc

پــــادشــاه فــلــــش
البته در مورد full text دوستان محدودیت مثل نیاز به بیشتر بودن کاراکترها از 3 کارکتر و bad word ها را هم مد نظر قرار دهند.
مثلا کلمه (تست) سه حرف دارد و امکان جستجوی آن در این روش نیست و در مورد bad word ها که یک سری کلمات انگلیسی هستند مثل the , a ,... که در سایت مای اس کیو ال توضیح داده شده است
 

Masoud1365

مدیر انجمن
با تشکر از حامد ! علاوه بر مواردی که گفتید یک نکته مهم دیگه هم هست و اونم توجه به تاریخ تاپیک هست !
آخرین ارسال 30 فروردين 1386بوده ! ( تاپیک های قدیمی رو بالا نیارید :wink: )
 

abolfazlgoodarz

New Member
با تشکر از حامد ! علاوه بر مواردی که گفتید یک نکته مهم دیگه هم هست و اونم توجه به تاریخ تاپیک هست !
آخرین ارسال 30 فروردين 1386بوده ! ( تاپیک های قدیمی رو بالا نیارید :wink: )

سلام منم مشکل دارم ولی با این تفاوت که ش را س پیدا می کنه یعنی آموزش را پیدا نمی کنه ولی آموزس را پی دا میکنه! یعنی وقتی می زنی آموزس ؛ آموزش پیدا می کنه@!؟:green:
 

جدیدترین ارسال ها

بالا