Быстрый поиск - Страница 2 - Дизайн и модификация Invision Power Board

Перейти к содержимому

 

Правила раздела

Здесь обсуждаются вопросы по настройке и администрированию форумов IPB 3.x.
Пожалуйста, не оффтопьте, если зашли сюда случайно, и обратите внимание на соседние разделы.
Установка, настройка и обслуживание форумов IPB 2.x.
Оформление форумов, включая верстку скинов.
Размещение рекламы на форумах.
SEO оптимизация форума.
Техническая поддержка наших скинов и модов.

СвернутьПрикрепленные теги

Теги не найдены

  • 3 Страниц +
  • 1
  • 2
  • 3

Быстрый поиск

#16 Пользователь не на сайте   Strategius ответил: »

 
 
  • Advanced
  • ***
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 385
  • Регистрация: 27-Март 16
  • Репутация: 29
  • IPB version:3.4.x
 

Отправлено 19 Сентябрь 2016 - 22:37

Вылез очень неприятный баг - а именно после ввода запроса (появляется анджакс-результат), и удаления его из строки, блок, выводящий результаты не исчезает :(
Нужная строчка в функции вроде присутствует:

$('#als_results').hide();

Всю голову уже сломал... Не ичезает и все, помогает только перезагрузка страницы. Помогите исправить этот баг, пожалуйста...

Оформил id-шник #als_results для визуализации бага: Вложение  Ajax Live Search v1.3 for IP.Board v3.4.x.zip (7,34К)
Количество загрузок: 4
0

#17 Пользователь не на сайте   Strategius ответил: »

 
 
  • Advanced
  • ***
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 385
  • Регистрация: 27-Март 16
  • Репутация: 29
  • IPB version:3.4.x
 

Отправлено 20 Сентябрь 2016 - 15:46

Подскажите, пожалуйста, как доработать sql-запрос, чтобы поиск производился только по первой букве слов?

Например, ищу словосочетание "Медведь Плюшевый", ввожу в поле поиска букву "е" и мне выдается: "Медведь Плюшевый". А нужно, чтобы его можно было найти только по буквам "м" и "п"... Не подскажете?

Сообщение изменено: Strategius (20 Сентябрь 2016 - 15:47)

0

#18 Пользователь не на сайте   Strategius ответил: »

 
 
  • Advanced
  • ***
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 385
  • Регистрация: 27-Март 16
  • Репутация: 29
  • IPB version:3.4.x
 

Отправлено 20 Сентябрь 2016 - 16:18

Код, отвечающий за вывод результата:

if( sizeof($searchStrings) == 1)
		{    
			$searchSQL 		= mysql_query("SELECT * FROM ".$topics_table." WHERE approved='1' AND state!='link' AND forum_id IN ( $forum_ids ) AND title LIKE '%".$searchString."%' ORDER BY ".$sortby." DESC LIMIT ".$LIMIT);
			$total_results 	= mysql_num_rows(mysql_query("SELECT * FROM ".$topics_table." WHERE approved='1' AND state!='link' AND forum_id IN ( $forum_ids ) AND title LIKE '%".$searchString."%' "));			
		}
		
		if( sizeof($searchStrings) > 1)
		{
			$i=1;
		    $searchSQL = "SELECT * FROM ".$topics_table." WHERE approved='1' AND state!='link' AND forum_id IN ( $forum_ids ) AND title LIKE '%".$searchStrings[0]."%' ";
		    while($i < sizeof($searchStrings))
		    {         
		    	$searchSQL .= " AND title LIKE '%".$searchStrings[$i]."%' ";
		        $i++;                
		    }
				$total_results = mysql_num_rows(mysql_query($searchSQL));
				
		        $searchSQL .= " ORDER BY ".$sortby." DESC LIMIT ".$LIMIT;
		        $searchSQL = @mysql_query($searchSQL);		
		}	

Сообщение изменено: Strategius (20 Сентябрь 2016 - 16:19)

0

#19 Пользователь на сайте   siv1987 ответил: »

 
 
  • Advanced
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: IPB Skins Team
  • Сообщений: 8 691
  • Регистрация: 20-Март 09
  • Репутация: 2 261
  • IPB version:3.1.x
 

Отправлено 21 Сентябрь 2016 - 11:12

AND title LIKE '%".$searchStrings[$i]."%'

заменить на
AND title REGEXP '[[:<:]]".preg_quote( $searchStrings[$i] )."'


AND title LIKE '%".$searchString."%'

заменить на
AND title REGEXP '[[:<:]]".preg_quote( $searchString )."'

1

#20 Пользователь не на сайте   Strategius ответил: »

 
 
  • Advanced
  • ***
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 385
  • Регистрация: 27-Март 16
  • Репутация: 29
  • IPB version:3.4.x
 

Отправлено 21 Сентябрь 2016 - 11:20

Внес правки, но все равно почему-то не работает... Поиск выдает результаты по одной любой букве (не первой в словах), да и еще часть букв отсеклась и по ним поиск вообще не работает...
0

#21 Пользователь на сайте   siv1987 ответил: »

 
 
  • Advanced
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: IPB Skins Team
  • Сообщений: 8 691
  • Регистрация: 20-Март 09
  • Репутация: 2 261
  • IPB version:3.1.x
 

Отправлено 21 Сентябрь 2016 - 11:31

title LIKE '%".$searchStrings[0]."%'

тоже нужно заменить
0

#22 Пользователь не на сайте   Strategius ответил: »

 
 
  • Advanced
  • ***
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 385
  • Регистрация: 27-Март 16
  • Репутация: 29
  • IPB version:3.4.x
 

Отправлено 21 Сентябрь 2016 - 11:50

На это?
title REGEXP '[[:<:]]".preg_quote( $searchStrings[0] )."'

Заменил, но тоже не работает...

Сообщение изменено: Strategius (21 Сентябрь 2016 - 11:50)

0

#23 Пользователь на сайте   siv1987 ответил: »

 
 
  • Advanced
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: IPB Skins Team
  • Сообщений: 8 691
  • Регистрация: 20-Март 09
  • Репутация: 2 261
  • IPB version:3.1.x
 

Отправлено 21 Сентябрь 2016 - 12:18

На всякий случай установите кодировку соединения с mysql

после
$als_select_db 	= mysql_select_db($INFO['sql_database'], $als_connect_db);

добавить
if($INFO['sql_charset']){
	mysql_set_charset($INFO['sql_charset']);
}

0

#24 Пользователь не на сайте   Strategius ответил: »

 
 
  • Advanced
  • ***
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 385
  • Регистрация: 27-Март 16
  • Репутация: 29
  • IPB version:3.4.x
 

Отправлено 21 Сентябрь 2016 - 12:28

Эффекта нет :( Даже без последней правки (и с ней тоже) выдает нулевой результат поиска... Может тогда просто ограничить запрос вводом хотя бы трех символов, чтобы облегчить задачу? Заодно и запрос к БД не будет таким тяжелым...

Сообщение изменено: Strategius (21 Сентябрь 2016 - 12:30)

0

#25 Пользователь на сайте   siv1987 ответил: »

 
 
  • Advanced
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: IPB Skins Team
  • Сообщений: 8 691
  • Регистрация: 20-Март 09
  • Репутация: 2 261
  • IPB version:3.1.x
 

Отправлено 21 Сентябрь 2016 - 12:35

Ограничивайте.
0

#26 Пользователь не на сайте   Strategius ответил: »

 
 
  • Advanced
  • ***
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 385
  • Регистрация: 27-Март 16
  • Репутация: 29
  • IPB version:3.4.x
 

Отправлено 21 Сентябрь 2016 - 12:40

А как не подскажете, пожалуйста? Хотя это и не очень правильное решение, очень жалко, что по первым символам не работает :( В чем же все-таки проблема может быть?
0

#27 Пользователь на сайте   siv1987 ответил: »

 
 
  • Advanced
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: IPB Skins Team
  • Сообщений: 8 691
  • Регистрация: 20-Март 09
  • Репутация: 2 261
  • IPB version:3.1.x
 

Отправлено 21 Сентябрь 2016 - 12:47

Is there a minlength validation attribute in HTML5?
0

#28 Пользователь не на сайте   Strategius ответил: »

 
 
  • Advanced
  • ***
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 385
  • Регистрация: 27-Март 16
  • Репутация: 29
  • IPB version:3.4.x
 

Отправлено 21 Сентябрь 2016 - 14:03

Добавил такой код в input: pattern='.{3,}'

$html .= "<input type='text' pattern='.{3,}' placeholder='".$als_placeholder."' name='search_term' id='als_input' size='17' />";

Но все равно результаты выдаются сразу после ввода первого символа...

Сообщение изменено: Strategius (21 Сентябрь 2016 - 14:03)

0

#29 Пользователь на сайте   siv1987 ответил: »

 
 
  • Advanced
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: IPB Skins Team
  • Сообщений: 8 691
  • Регистрация: 20-Март 09
  • Репутация: 2 261
  • IPB version:3.1.x
 

Отправлено 21 Сентябрь 2016 - 14:16

Для лайв поиска?

		$('#search_term').keyup(function(){
			if(this.value.length >= 3){
				page = 1;
				sendToSearch(page);
			}
		});

0

#30 Пользователь не на сайте   Strategius ответил: »

 
 
  • Advanced
  • ***
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 385
  • Регистрация: 27-Март 16
  • Репутация: 29
  • IPB version:3.4.x
 

Отправлено 21 Сентябрь 2016 - 14:46

Да, для лайв. Вообще перестало работать, не ищет с такой доработкой... Надо, чтобы искало после ввода трех символов, а теперь вообще не ищет(
0

Сообщить об этой теме:


  • 3 Страниц +
  • 1
  • 2
  • 3


Быстрый ответ

  

1 пользователей читают эту тему
0 зарегистрированных, 1 гостей, 0 скрытых


Контактная информация

Вопросы по работе сайта

+7 (917) 501-4765
C 10 до 20 в рабочие дни (время московское)

Техническая поддержка

Контактные данные специалистов

Дизайн форумов

IPB 3.x ¦ IPB 2.x

Бесплатные шаблоны

IPB 3.2 – 3.4 ¦ IPB 3.1 ¦ IPB 3.0 ¦ IPB 2.2 – 2.3 ¦ IPB 2.1 ¦ Клипарт
Лицензия на использование ¦ Ваша поддержка ¦ О проекте
Copyright © 2005-2016 IPBSkins.ru Team
При копировании материалов с сайта
прямая ссылка на источник обязательна