رفتن به مطلب

کد خطا : EX1064 در قسمت جستجو


ارسال‌های توصیه شده

سلام خسته نباشید در هنگام سرچ این خطا رخ میده البته برای بعضی کلمات

مخفی کننده


SELECT main.* FROM `core_search_index` AS `main` WHERE ( ( index_class IN('IPS\\core\\Statuses\\Status','IPS\\core\\Statuses\\Reply') ) OR index_class='IPS\forums\Topic\Post' OR ( index_class IN('IPS\\gallery\\Image','IPS\\gallery\\Image\\Comment','IPS\\gallery\\Image\\Review') ) OR ( index_class IN('IPS\\gallery\\Album\\Item','IPS\\gallery\\Album\\Comment','IPS\\gallery\\Album\\Review') ) OR ( index_class IN('IPS\\downloads\\File','IPS\\downloads\\File\\Comment','IPS\\downloads\\File\\Review') ) ) AND  AND ( index_permissions = '*' OR ( FIND_IN_SET(4,index_permissions) OR FIND_IN_SET('m1',index_permissions) OR FIND_IN_SET('ca',index_permissions) OR FIND_IN_SET('c1',index_permissions) OR FIND_IN_SET('c2',index_permissions) OR FIND_IN_SET('c4',index_permissions) OR FIND_IN_SET('c5',index_permissions) OR FIND_IN_SET('c6',index_permissions) OR FIND_IN_SET('cm',index_permissions) ) ) ORDER BY index_date_created DESC LIMIT 0,25
IPS\Db\Exception: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'AND ( index_permissions = '*' OR ( FIND_IN_SET(4,index_permissions) OR FIND_IN_S' at line 1 (1064)
#0 /home/nevisadl/domains/nevisadl.com/public_html/system/Db/Select.php(378): IPS\_Db->preparedQuery('/*IPS\\Content\\S...', Array, true)
#1 /home/nevisadl/domains/nevisadl.com/public_html/system/Db/Select.php(440): IPS\Db\_Select->runQuery()
#2 [internal function]: IPS\Db\_Select->rewind()
#3 /home/nevisadl/domains/nevisadl.com/public_html/system/Content/Search/Mysql/Query.php(1258): iterator_to_array(Object(IPS\Db\Select))
#4 /home/nevisadl/domains/nevisadl.com/public_html/applications/core/modules/front/search/search.php(608): IPS\Content\Search\Mysql\_Query->search('\xD9\x82\xDB\x8C\xD8\xB2 \xD8\xA8\xD8\xB3', NULL, 17)
#5 /home/nevisadl/domains/nevisadl.com/public_html/applications/core/modules/front/search/search.php(73): IPS\core\modules\front\search\_search->_results()
#6 /home/nevisadl/domains/nevisadl.com/public_html/system/Dispatcher/Controller.php(96): IPS\core\modules\front\search\_search->manage()
#7 /home/nevisadl/domains/nevisadl.com/public_html/system/Dispatcher/Dispatcher.php(146): IPS\Dispatcher\_Controller->execute()
#8 /home/nevisadl/domains/nevisadl.com/public_html/index.php(12): IPS\_Dispatcher->run()
#9 {main}

 

 ممنون میشم راهنمایی کنید

لینک ارسال
به اشتراک گذاری در سایت های دیگر

  • بنیان گذار IPSFarsi

با سلام

از بخش بررسی سیستمی، یکبار سرور رو بررسی کنید.

نسخه MariaDB شما چیه؟

لینک ارسال
به اشتراک گذاری در سایت های دیگر

در 13 ساعت قبل، وحید نامنی گفته است :

با سلام

از بخش بررسی سیستمی، یکبار سرور رو بررسی کنید.

نسخه MariaDB شما چیه؟

سلام بررسی انجام دادم همه چی درست کار میکنه
نسخه 5.5.5-10.2.10-MariaDB-log   

 

لینک ارسال
به اشتراک گذاری در سایت های دیگر

  • بنیان گذار IPSFarsi

از پنل مدیریت انجمن، تنظیمات > جستجو مطالب > جستجو، دکمه "بازسازی فهرست جستجو" را کلیک کنید و پس از اتمام کار، وارد تنظیمات > پشتیبانی > پشتیبانی، شوید و گزینه "قسمتی به درستی کار نمی کند" را بزنید و صبر کنید تا عملیات به پایان رسد.

PHP چه نسخه ای هست؟

لینک ارسال
به اشتراک گذاری در سایت های دیگر

در 1 ساعت قبل، وحید نامنی گفته است :

از پنل مدیریت انجمن، تنظیمات > جستجو مطالب > جستجو، دکمه "بازسازی فهرست جستجو" را کلیک کنید و پس از اتمام کار، وارد تنظیمات > پشتیبانی > پشتیبانی، شوید و گزینه "قسمتی به درستی کار نمی کند" را بزنید و صبر کنید تا عملیات به پایان رسد.

PHP چه نسخه ای هست؟

نگارش PHP 7.0.26

 

انجام دادم

 

image.png.01aeb8acceb78a17d27972ad4e15a716.png

لینک ارسال
به اشتراک گذاری در سایت های دیگر

  • بنیان گذار IPSFarsi

قبل از اینکه ادامه بدیم چند مورد رو با هم بررسی می کنیم.

 این خطا به این خاطر ایجاد شده که دستور فراخوانی اطلاعات از بانک اطلاعاتی، ساختار نوشتار اون(Syntax) با نسخه بانک اطلاعاتی شما سازگار نیست.

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

 

اول اینکه تمام مد ها و برنامه ها رو به غیر از انجمن رو غیر فعال کنید و تست کنید ببینید باز هم این خطا هست یا نه تا برسیم به برنامه ای که مشکل داره. بعدش می تونیم تصمیم بگیریم که آیا اصلا از مد ها هست یا به خاطر حجیم شدن تیبل core search یا اصلا چیز دیگه ای هست.

موفق باشید

 

لینک ارسال
به اشتراک گذاری در سایت های دیگر

درود جناب نامنى. عذرخواهى ميكنم كه ميان تاپيك وارد شدم. در چند انجمن سازى كه من بررسى كردم با جستجوى كلمات سه حرفى مشكل دارند. ظاهرن اين باگى از طرف IPS هست. 

لینک ارسال
به اشتراک گذاری در سایت های دیگر

  • بنیان گذار IPSFarsi
در 2 دقیقه قبل، محمد رستمی گفته است :

درود جناب نامنى. عذرخواهى ميكنم كه ميان تاپيك وارد شدم. در چند انجمن سازى كه من بررسى كردم با جستجوى كلمات سه حرفى مشكل دارند. ظاهرن اين باگى از طرف IPS هست. 

از طرف IPS نیست به خاطر تنظیمات MySQL هست. اگر از IPS بود الان اینجا شما یک کلمه ۳ حرفی جستجو می کردید باید خطا دریافت می کردید ولی اینجا خطایی رخ نمی ده.

علت خطا به خاطر مقدار ft_min_word_len  در MySQL هست که روی 4 تنظیم شده، که باید 3 باشه.

علت اینکه توی IPS هم این خطا دریافت می شه و توی سیستم های مدیریت محتوای دیگه دریافت نمی شه به خاطر اینه که IPS از FullText استفاده می کنه که دقت بیشتری داره.

لینک ارسال
به اشتراک گذاری در سایت های دیگر

در 3 ساعت قبل، وحید نامنی گفته است :

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

سلام بله از سه حرفی هستش  کلمات دو حرفی هم پیش میاد دوتا کلمه مثل قیز بس و عطر چشم ها هم سرچ کردم این خطا میده

ولی کلمه هایی که این تعداد حرف دارند سرچ کردم خطا نداد

در 2 ساعت قبل، وحید نامنی گفته است :

از طرف IPS نیست به خاطر تنظیمات MySQL هست. اگر از IPS بود الان اینجا شما یک کلمه ۳ حرفی جستجو می کردید باید خطا دریافت می کردید ولی اینجا خطایی رخ نمی ده.

علت خطا به خاطر مقدار ft_min_word_len  در MySQL هست که روی 4 تنظیم شده، که باید 3 باشه.

علت اینکه توی IPS هم این خطا دریافت می شه و توی سیستم های مدیریت محتوای دیگه دریافت نمی شه به خاطر اینه که IPS از FullText استفاده می کنه که دقت بیشتری داره.

ببخشید من الان باید چیکار کنم سر در نمیارم:confused:

لینک ارسال
به اشتراک گذاری در سایت های دیگر

  • بنیان گذار IPSFarsi
در ۱ ساعت قبل، sahar گفته است :

ببخشید من الان باید چیکار کنم سر در نمیارم:confused:

به پشتیبانی سرورتون تیکت بدید و این متن رو براشون ارسال کنید :

با توجه به استفاده از حالت Full Text Search در MySQL لطفا متغیر ft_min_word_len بر روی 3 تنظیم شود چرا که هم اکنون به صورت پیشفرض  روی 4 بوده و برای کلمات سه حرفی فارسی، خطا ایجاد می شود. حتما نیاز است بعد از این تغییر MySQL ری استارت گردیده و جداول FullText توسط شما مدیر سرور بازسازی شود.

اطلاعات بیشتر :

https://stackoverflow.com/questions/9964363/mysql-full-text-search-not-working-for-3-characters

 

اگر متغیر رو گفته شده رو تغییر بدن و دقیقا اون کارهایی که گفته شده رو انجام بدن، مشکل شما رفع می شه.

موفق باشید

لینک ارسال
به اشتراک گذاری در سایت های دیگر

بایگانی شده

این موضوع بایگانی و قفل شده و دیگر امکان ارسال پاسخ نیست.

  • کاربران آنلاین در این صفحه   0 کاربر

    • هیچ کاربر عضوی،در حال مشاهده این صفحه نیست.
×
×
  • اضافه کردن...