Уважаемые пользователи!
C 7 ноября 2020 года phpBB Group прекратила выпуск обновлений и завершила дальнейшее развитие phpBB версии 3.2.
С 1 августа 2024 года phpBB Group прекращает поддержку phpBB 3.2 на официальном сайте.
Сайт официальной русской поддержки phpBB Guru продолжит поддержку phpBB 3.2 до 31 декабря 2024 года.
С учетом этого, настоятельно рекомендуется обновить конференции до версии 3.3.

После обновления форума до 3.0.14 поиск стал регистрозависимым Тема решена

Проблемы с установкой или работой phpBB 3.0.x? Получите помощь здесь!
С 1 января 2017 года phpBB Group прекращает поддержку phpBB версии 3.0.
Сайт официальной русской поддержки phpBB Guru продолжит поддержку phpBB 3.0 до 1 июля 2017 года.
Подробнее: Окончание поддержки phpBB 3.0.
Правила форума
Местная Конституция | Шаблон запроса | Документация (phpBB3) | Переход на 3.0.6 и выше | FAQ-3 (phpbb3) | Как задавать вопросы | Как устанавливать моды

Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение ;) ).
SHOCK
phpBB 1.4.3
Сообщения: 91
Стаж: 19 лет 9 месяцев
Благодарил (а): 14 раз

После обновления форума до 3.0.14 поиск стал регистрозависимым

Сообщение SHOCK »

После обновления форума до 3.0.14 поиск стал регистрозависимым

Здравствуйте!
Вот такая проблема нарисовалась. Знания малы и видимо потому сам не справился. Помогите пож.
поиск Fulltext mysql
Если вопрос в деньгах , то готов оплатить. только на сервер не могу пускать никого(сорри).

P/S Не похоже что дело в Мускуле или ПХП, так как рядом на сервере сидит Joomla и ещё некий софт который ищет как надо.


Описание проблемы: Поиск стал регистрозависимым
Произведенные изменения, после которых начались неполадки: После обновления форума до 3.0.14 поиск стал регистрозависимым
Версия phpBB: 3.0.14
Используемые стили: просильвер
Версия PHP:: PHP 5.6.23
Используемая СУБД и её версия: MySQL 5.7.13
Использовался ли поиск для решения проблемы: Искал, с двух подходов ничего не нашёл
Если да, то какие запросы вы использовали: регистрозав* поиск
Аватара пользователя
LONER
phpBB 3.0.0 RC1
Сообщения: 1486
Стаж: 8 лет 2 месяца
Благодарил (а): 164 раза
Поблагодарили: 247 раз

Re: После обновления форума до 3.0.14 поиск стал регистрозависимым

Сообщение LONER »

SHOCK писал(а): Искал, с двух подходов ничего не нашёл
С одного подхода нашел
Регистр символов при поиске
Проблема с поиском после восстановления
проблема с никами с разным регистром
Нужен регистронезависимый поиск на русском.

А если попробовать пересоздать поисковые индексы?

Изображение
Правильно заданный вопрос и описание проблемы - 70% их решения...
Аватара пользователя
nissin
phpBB 3.0.4
Сообщения: 2208
Стаж: 16 лет 3 месяца
Откуда: Павлодар
Благодарил (а): 7 раз
Поблагодарили: 338 раз
Контактная информация:

Re: После обновления форума до 3.0.14 поиск стал регистрозависимым

Сообщение nissin »

SHOCK,
На всякий случай посмотрите какой COLLATE у столбцов post_subject и post_text таблицы phpbb_posts.
Для FullText MySQL должно быть utf8_unicode_ci.
Всё повторяется. nurlan.info
SHOCK
phpBB 1.4.3
Сообщения: 91
Стаж: 19 лет 9 месяцев
Благодарил (а): 14 раз

Re: После обновления форума до 3.0.14 поиск стал регистрозависимым

Сообщение SHOCK »

LONER,
это и я нашёл, но результата не добился никакого

например по ссылкам
1.
LONER писал(а): Регистр символов при поиске
вот что у меня - post_text mediumtext utf8_unicode_ci
Кодировка сервера: UTF-8 Unicode (utf8)
что здесь не так?

2.
LONER писал(а): Проблема с поиском после восстановления
удалил индексы 1372938
создал 1372939

удаляются и создаются, медленно, но и база не самая маленькая.
что не так?

последние 2 ссылки вроде как не по этой ветке

жду ещё новых идей

nissin,
nissin писал(а): На всякий случай посмотрите какой COLLATE у столбцов post_subject и post_text таблицы phpbb_posts.
Для FullText MySQL должно быть utf8_unicode_ci.
проверил
post_subject varchar(255) utf8_unicode_ci
post_text mediumtext utf8_unicode_ci


P.S. спасибо что пытаетесь помочь...
Аватара пользователя
nissin
phpBB 3.0.4
Сообщения: 2208
Стаж: 16 лет 3 месяца
Откуда: Павлодар
Благодарил (а): 7 раз
Поблагодарили: 338 раз
Контактная информация:

Re: После обновления форума до 3.0.14 поиск стал регистрозависимым

Сообщение nissin »

Сделайте резервную копию и выполните SQL запрос:

Код: Выделить всё

ALTER TABLE phpbb_posts CONVERT TO CHARACTER SET utf8 COLLATE utf8_unicode_ci
Всё повторяется. nurlan.info
SHOCK
phpBB 1.4.3
Сообщения: 91
Стаж: 19 лет 9 месяцев
Благодарил (а): 14 раз

Re: После обновления форума до 3.0.14 поиск стал регистрозависимым

Сообщение SHOCK »

nissin,
nissin писал(а): ALTER TABLE phpbb_posts CONVERT TO CHARACTER SET utf8 COLLATE utf8_unicode_ci
так как локально та же самая проблема(софт тех же версий), то пока запустил команду локально под ОпенСервером, конвертится уже с час точно :(

Боевой сервер пока не трогаю(если локально получится, то позже), а пока в phpadmin попробовал поиском по боевой таблице phpbb_posts
Ищет как надо - регистронезависимо.

Правильно понимаю, что кажется не в БД дело, а похоже в скриптах???
Аватара пользователя
nissin
phpBB 3.0.4
Сообщения: 2208
Стаж: 16 лет 3 месяца
Откуда: Павлодар
Благодарил (а): 7 раз
Поблагодарили: 338 раз
Контактная информация:

Re: После обновления форума до 3.0.14 поиск стал регистрозависимым

Сообщение nissin »

А как искали по боевой таблице?
Нужно что-то вроде:

Код: Выделить всё

SELECT * FROM phpbb_posts WHERE MATCH(post_text) AGAINST ('+Слово' IN BOOLEAN MODE)
Всё повторяется. nurlan.info
SHOCK
phpBB 1.4.3
Сообщения: 91
Стаж: 19 лет 9 месяцев
Благодарил (а): 14 раз

Re: После обновления форума до 3.0.14 поиск стал регистрозависимым

Сообщение SHOCK »

SHOCK писал(а): ALTER TABLE
А похоже что это помогло!!! ;) СПАСИБО!

Теперь выдаёт одинаковое кол-во, что с большой буквы, что с маленькой. Правда раньше в таком виде не пробовал делать, искал средствами phpmyadmin

Но таки Остался один минус, не выделяет цветом те слова в которых регистр хоть одной буквы не попал как надо под запрос.

Я смотрю, сравниваю search.php и похоже вижу что там с этой версией внесены изменения в нескольких местах, отвечающих за подсветку.
А тямы не хватает понять в чём проблема и навредить боюсь :?
Аватара пользователя
nissin
phpBB 3.0.4
Сообщения: 2208
Стаж: 16 лет 3 месяца
Откуда: Павлодар
Благодарил (а): 7 раз
Поблагодарили: 338 раз
Контактная информация:

Re: После обновления форума до 3.0.14 поиск стал регистрозависимым

Сообщение nissin »

OPEN search.php
FIND

Код: Выделить всё

				$row['topic_title'] = preg_replace('#(?!<.*)(?<!\w)(' . $hilit . ')(?!\w|[^<>]*(?:</s(?:cript|tyle))?>)#is', '<span class="posthilit">$1</span>', $row['topic_title']);
REPLACE WITH

Код: Выделить всё

				$row['topic_title'] = preg_replace('#(?!<.*)(?<!\w)(' . $hilit . ')(?!\w|[^<>]*(?:</s(?:cript|tyle))?>)#isu', '<span class="posthilit">$1</span>', $row['topic_title']);
FIND

Код: Выделить всё

					$row['post_text'] = preg_replace('#(?!<.*)(?<!\w)(' . $hilit . ')(?!\w|[^<>]*(?:</s(?:cript|tyle))?>)#is', '<span class="posthilit">$1</span>', $row['post_text']);
					$row['post_subject'] = preg_replace('#(?!<.*)(?<!\w)(' . $hilit . ')(?!\w|[^<>]*(?:</s(?:cript|tyle))?>)#is', '<span class="posthilit">$1</span>', $row['post_subject']);
REPLACE WITH

Код: Выделить всё

					$row['post_text'] = preg_replace('#(?!<.*)(?<!\w)(' . $hilit . ')(?!\w|[^<>]*(?:</s(?:cript|tyle))?>)#isu', '<span class="posthilit">$1</span>', $row['post_text']);
					$row['post_subject'] = preg_replace('#(?!<.*)(?<!\w)(' . $hilit . ')(?!\w|[^<>]*(?:</s(?:cript|tyle))?>)#isu', '<span class="posthilit">$1</span>', $row['post_subject']);
Нужна поддержка UTF-8 в библиотеке PREG, но как правило сейчас это практически всегда есть.
Всё повторяется. nurlan.info
SHOCK
phpBB 1.4.3
Сообщения: 91
Стаж: 19 лет 9 месяцев
Благодарил (а): 14 раз

Re: После обновления форума до 3.0.14 поиск стал регистрозависимым

Сообщение SHOCK »

nissin, Просто Красота!
Оказывается он ещё хуже выделял до этого, после изменения кода кучу слов отмечает, которые я не замечал просто а теперь все видно,
хоть с большой, маленькой или отдельно написаны, короче всё видно
Спасибо ОГРОМНОЕ!
Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 16313
Стаж: 17 лет 10 месяцев
Откуда: Красноярск
Благодарил (а): 533 раза
Поблагодарили: 2119 раз
Контактная информация:

Re: После обновления форума до 3.0.14 поиск стал регистрозависимым

Сообщение rxu »

Почему здесь всё подсвечивается? Может, дело не в регулярке?

Отправлено спустя 1 минуту 20 секунд:
Видимо, дело в локали на сервере.
Изображение
SHOCK
phpBB 1.4.3
Сообщения: 91
Стаж: 19 лет 9 месяцев
Благодарил (а): 14 раз

Re: После обновления форума до 3.0.14 поиск стал регистрозависимым

Сообщение SHOCK »

rxu, очень может быть, но это помогло
как и почему, нет возможности разбираться.

У вас есть предположения?

О, вы уже и ответили
Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 16313
Стаж: 17 лет 10 месяцев
Откуда: Красноярск
Благодарил (а): 533 раза
Поблагодарили: 2119 раз
Контактная информация:

Re: После обновления форума до 3.0.14 поиск стал регистрозависимым

Сообщение rxu »

SHOCK, попробуйте выполнить скрипт

Код: Выделить всё

<?php

echo locale_get_default(); 
И покажите результат.
Изображение
SHOCK
phpBB 1.4.3
Сообщения: 91
Стаж: 19 лет 9 месяцев
Благодарил (а): 14 раз

Re: После обновления форума до 3.0.14 поиск стал регистрозависимым

Сообщение SHOCK »

здесь разве 3.0.14 ?

проверил

Код: Выделить всё

# locale -a | grep ru_RU
ru_RU
ru_RU.iso88595
ru_RU.koi8r
ru_RU.utf8
что-то не так?
Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 16313
Стаж: 17 лет 10 месяцев
Откуда: Красноярск
Благодарил (а): 533 раза
Поблагодарили: 2119 раз
Контактная информация:

Re: После обновления форума до 3.0.14 поиск стал регистрозависимым

Сообщение rxu »

Это ничего не дает. Надо узнать, какая именно локаль работает в момент выполнения скрипта. Я выше показал, как.

Отправлено спустя 5 минут 59 секунд:
SHOCK писал(а): здесь разве 3.0.14 ?
Это не имеет значения, т.к. указанные выше строки в search.php те же самые. Здесь, кстати говоря, en_US_POSIX, и всё работает. Видимо, дело как раз в этом.
Изображение
Закрыто

Вернуться в «Поддержка phpBB 3.0.х»