Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

rider76

Користувачі
  
  • Публікації

    85
  • З нами

  • Відвідування

Усі публікації користувача rider76

  1. Не работают такие вырианты, что-то здесь не так. Выводятся так же все позиции при пробеле в конце и между цифрами если поставить двойной пробел.
  2. При вводе запроса, когда перед номером стоит пробел, относится только к пробелу, вставлять перед номером любые знаки можно, поиск найдет модель, а все позиции выводит только когда впереди стоит пробел.
  3. Получается я неправильно менял код?Как я выше написал работает, между цифрами все удаляет, а впереди номера если вставить пробел то выводит все позиции, там же по условию поиск с начала номера, вот и получается если в начале номера пробел он и выводит все. А чекбоксы у меня постоянно включены оба и внешне на сайте вообще не отображаются, я менял строку в фале \catalog\view\theme\ТЕМА\template\product\ search.tpl эту url = 'index.php?route=product/searchна эту url = 'index.php?route=product/search&model=1&description=1'; в итоге у меня изначально по умолчанию сразу искал и по коду и по модели, заморочки с пробелами были
  4. Огромное спасибо, все работает по обоим вариантам так как описано. Немного уточню- строка $sql .= " OR p.model LIKE '%" . $this->db->escape($keyword) . "%')"; Присутствует в двух местах в коде. Я брал второй вариант, так как он действительно более точный и удобный, я менял весь кусок кода в двух местах, этот if (!$model) { $sql .= ")"; } else { $sql .= " OR p.model LIKE '%" . $this->db->escape($keyword) . "%')"; }заменил на: $number = preg_replace('/\D/', '', $keyword); if (strlen($number) > 2) { $sql .= " OR p.model LIKE '" . $number . "%')"; } else { $sql .= " OR p.model LIKE '%" . $this->db->escape($keyword) . "%')"; } При данном способе артикул (модель) в админке должен быть ряд цифр без пробелов, иначе не работает. Еще есть один нюанс при втором способе - если при запросе впереди номера окажется пробел, поиск выведет все позиции. Еще раз огромное спасибо Yesvik.
  5. Попробую, отпишусь о результатах. Есть еще одна тема для размышлений по поиску. Проблему высказали на зарубежном форуме. Решения тоже нет. Поиск по наименованию, например позиция Palm Treo Pro , поиск ее не найдет если в поиск ввести первое и последнее слово (Palm Pro). Я считаю это тоже большим упущением. Мне впринципе это особо ни к чему, но все же.
  6. Вообще я просмотрел много магазинов запчастей и выделил как минимум 2 способа как это делают. При первом способе после ввода запроса маска номера остается та-же, а номера в результатах отображаются так как они забиты в магазине, здесь получается идет какой-то интуитивный поиск. При втором способе вводишь в окно запроса цифры со знаками пробелами и при нажатии на кнопку поиск цифры как бы съезжаются удаляя все лишнее между ними.
  7. Я у себя чекбоксы поиск по модели и поиск по названию вообще убрал, а в функции прописал поиск по модели по умолчанию (хотя если ввести название он тоже его найдет что странно). Получается что сейчас в окно поиска я ввожу :товар 11 - находит 11 - находит товар 11 товар11 - не находит 1 1 - не находит пробел11 - выводит все позиции При первом способе при вводе 21 (имеется ввиду товар 21) выводятся все позиции в которых встречаются цифра 2 и цифра 1. При втором способе никаких отличий от стандартного поиска. Хотя может я не то менял? (ту же строку что и при первом способе)
  8. Решил данную проблему. В шаблоне по умолчанию стоял div class="middle". Я не учел, что он прописан в функции внизу шаблона, а так же в скрипте ajax_add.js . Поменял в коде на название своего div art-BlockContent и все заработало. Может кому пригодится
  9. Прошу прощения, какие файлы надо править? А вообще все верно, в этой задаче поиск идет только по цифрам. "В том чилсе и наоборот" можно опустить. Это уже было бы так сказать идеальное решение. Просто в этом случае артикул (модель) будет заполняться как цифр без пробелов.
  10. У меня немного другая проблема. Товар в корзину (в бокс корзины) добавляется, но отображается только после перезагрузки страницы. При удалении тоже самое. Я правил шаблон \theme\default\template\module\cart.tpl , вроде бы функционал не трогал, только внешний вид (шапку и обрамление), добавлял DIVы. При вставке старого кода все в норме. Сначала не обратил внимание на это, в какой момент это произошло, теперь не могу найти где ошибка. Да еще, при нажатии кнопки добавить в корзину, картинка улетает не в сторону корзины, а ниже пролетает.
  11. Данную проблему можно решить путем добавления тегов в товары и установки поиска и по модели и по названию В файле catalog\view\theme\ваша_тема\template\product\ search.tpl строку: url = 'index.php?route=product/search'; заменить на: url = 'index.php?route=product/search&model=1&description=1'; Но я не считаю это выходом, слишком много тегов придется добавлять к каждому товару, а если в магазине много позиций, то на это уйдет уйма времени.
  12. Большое спасибо, очень полезное решение.
  13. Переписывать контроллер придется полностью или добавлять какие-то переменные? Здесь речь идет даже не о названии, а скорей всего о модели (артикуле). Нашел что то похожее в регулярных выражениях PHP в модификаторах: Это я взял отсюда - http://phpforum.ru/index.php?showtopic=15291 Вот только как это применить я не знаю. Есть варианты как это сделать? Или я не туда копаю ?
  14. Прочесал зарубежный форум. Выше один из подобных моему вопрос. Даже странно, что ни на один подобный вопрос нет нигде ответа ответа. Откликнитесь кто знает PHP.
  15. У меня не работает. OS 2.0 . Ошибки вываливаются. На админ панель все равно попадает ( на сайт не перенаправляется )и сверху ошибка Notice: Use of undefined constant session - assumed 'session' in ..........\admin\index.php on line 98 , при попытке авторизации тоже ошибки Notice: Use of undefined constant session - assumed 'session' in .........\admin\index.php on line 98Warning: Cannot modify header information - headers already sent by (output started at .........\admin\index.php:73) in ...........\system\engine\controller.php on line 27
  16. Для наглядности приведу пример поиска с игнорированием символов. Сайт всем известного интернет магазина запчастей www.exist.ru. Введите в окно поиска номер 50+10*26-0.052 (цилиндр сцепления рено). Все символы между цифрами игнорируются и в результатах появляется позиция с номером в таком виде 5010 260 052.Подскажите как это реализовать, очень нужно, и я думаю не мне одному. Существующий поиск практически бесполезен в таком виде как он есть сейчас.
  17. Добрый день. Искал решение проблемы по реализации поиска на форуме и не только и не нашел. Необходимо организовать поиск по модели так, что бы запрос на поиск например номера 81.41685-0040, 81-41685-0040, A81416850040, 81 41685 0040 считался одним и тем же, то есть пробелы, точки, тире, другие знаки и т.д. опускались и выводилась позиция с моделью 81416850040. В том числе и наоборот. Существует модуль автоподстановки, типа как в google, снизу окна поиска появляются позиции, подходящие под запрос, но это не совсем то. Возможно его можно переработать под такие нужды, но у меня не получилось. Позиции не должны снизу окна показываться, а должны появляться именно уже в модуле поиска в результатах поиска. Такой принцип организован в основном на сайтах автозапчастей, так как маски номеров у разных производителей различны. Да и я думаю это будет полезно для всех. Никто не знает как посетитель введет запрос поиска- товар20 или товар 20. Подсветка снизу не совсем удобна, многие даже не смотрят что появляется во время ввода, нажимают enter и смотрят результат. Возможно даже можно сделать с помощью чекбоксов точный поиск по номеру ( например 123 и выводится именно 123) и поиск с начала номера (когда в результатах появляются позиции начинающиеся с 123) Прошу профессионалов не очень сильно ругаться, я правда пробовал переделать модуль автоподстановки, но мои знания PHP пока оставляют желать лучшего. Буду признателен за ответ.
  18. Надо в файле catalog\view\theme\ваша_тема\template\product\search.tpl строку: url = 'index.php?route=product/search'; заменить на: url = 'index.php?route=product/search&model=1'; или для поиска и по модели и по названию: url = 'index.php?route=product/search&model=1&description=1';
×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.