![]() |
|
||||||||||
|
|||||
|
Как можно организовать поиск по сайту?
Например, есть магазин в котором есть 5 категорий, в каждой категории по 10 товаров. Как сделать так, чтобы при введении информации в строку поиска показывались только те товары, которые удовлетворяют запросу? |
|
|||||
|
[+4 06.05.14]
|
Я код писать не буду тут долго. Я расскажу тебе механизм.
1. Твои товары - это мувиклипы(желательно); 2. По написанию в строке текста ( для поиска) - и нажатия кнопки enter срабатывает некоторая функция. 3. А именно функция : которая через цикл(for) или кейсы(switch) проверяет совпадения либо по имени клипов, либо по каким либо другим атрибутам. Решать вам. 4. После всего этого запускается еще одна функция - а именно, прячет ненужные нам клипы, а оставляет те что мы отобрали. с помощью свойств ( _visible); 5/ Ну и наконец чтобы все смотрелось красиво. придется еще и мат алгоритм придумать., такой чтобы после поиска товары сдвигались. П.с. вообще это слишком трудоемкий процесс - такие вещи немного не для флеш все же имхо. Лучше мускл юзать и работать с пхп или хтмл хотя бы. |
|
|||||
|
Модрон-ветеринар
|
Есть реализации поиска для флеша. Автору же не нужен сложный поиск по большим массивам текста, достаточно искать введенный текст только в названиях товаров и в описании, если нужно.
И вывод результатов тоже можно оформить списком с картинками-кнопками для перехода к карточку товара. Кропотливая работа, но вполне реализуемая, и не требует SQL, PHP. Вообще, все зависит от текущей архитектуры флеш-сайта - то ли у вас все названия-описания уже загружены во флеш (с помощью XML или еще как-то), то ли они подгружаются по выбору пользователя при необходимости. Если же последнее, то тут без привлечения традиционных средств поиска на PHP (PHP + MySQL) не обойтись, так как пробивать базу названий-описаний на предмет нужного при каждом нажатии ввода довольно плохая идея. Поэтому можно вспомнить о принципе индексации, и искать нужное по запросу к готовому индексу. Так работают многие простейшие поисковые скрипты, их много лежит в инете. И тогда флеш будет служить просто для вывода (оформления) уже готового результата, не более (с возможностью перейти к нужному). Последний раз редактировалось mooncar; 07.03.2010 в 00:31. |
|
|||||
|
Ситуация следующая:
Вся информация загружается сразу из одного XML документа, но показывается не одним списком, а есть категории...брюки, блузки и т.д. Т.е. вы предлагаете названия всех товаров(т.е. ноды в XML) загружать в массив и осуществлять поиск по этому массиву, подгружая на страницу только те товары, которые совпадают с введённым текстом? |
|
|||||
|
Модрон-ветеринар
|
Как-то, когда я только начинал, я использовал один готовый скрипт (урок и сам исходник нашел на http://www.flashist.ru/) для организации своего поиска по товарному каталогу, который сделал на флеше. Каталог загружался с CD-диска. В процессе поиска скрипт последовательно обращался к файлам с текстовыми данными.
Пользователь набирал в строке поиска искомое вхождение, и после нажатия кнопки "Искать" у меня выводился список товаров. Далее, по клику на интересующем товаре, осуществлялся переход на карточку товара, при этом сам список оставался незакрытым, чтобы можно было перейти к другой карточке. У вас же ситуация попроще, поскольку все данные уже загружены, подгружать их в процессе работы поискового скрипта уже не нужно, остается только правильно организовать сам поиск и вывод результатов. Вот вам скрипт поиска на AS, который я взял за основу, попробуйте доработать. Последний раз редактировалось mooncar; 08.03.2010 в 22:41. |
|
|||||
|
in4core, mooncar - спасибо за помощь, ребята!
![]() Попробую разобраться с тем что уже сказано, если что задам ещё парочку вопросов, ок? ![]() |
|
|||||
|
[+4 06.05.14]
|
Задавай
![]() Я не хочу обижать мункара , но есть мнение - поскольку ты задаешь вопросы и обсуждаешь их, то видимо ты разбираешься в написании кода, а поэтому советаю не брать чужие скрипты даже для доделки, а писать самому с нуля. ++Опыт, --Будущие проблемы))) |
|
|||||
|
да, прикольный скриптец, мне нравится, только вот:
if(заказчик == deadline && опыт < желания) { скрипты++; опыт ++; корзина ++; } else { опыт ++; корзина.push; время --; скрипты._visible = false; } ![]() |
![]() |
![]() |
Часовой пояс GMT +4, время: 00:34. |
|
|
« Предыдущая тема | Следующая тема » |
|
|