Поиск по интернет-магазину

E
На сайте с 26.08.2011
Offline
62
509

Есть подобие интернет-магазина, но без корзины, на dle, - заказ товара осуществляется через письмо на почту через форму обратной связи.

В магазине около 100 однотипных товаров, которые отличаются рядом параметров, (диаметр, тип крепления, регулируемая среда)

Как лучше сделать форму поиска товара? видится вариант с выпадающими списками, где по очереди надо выбрать параметры, нажать поиск и сайт выдаст подходящие товары. Как это лучше реализовать?

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

LM
На сайте с 16.06.2014
Offline
0
#1

Почему бы не создать ИМ с обыкновенной корзиной?

TK
На сайте с 14.06.2014
Offline
1
#2

exforma,

По моему все так делают -> получить с формы параметры и сделать запрос в БД/обработать xml -> выдать html в качестве результата. Через Ajax или без него. Ну и все это из доступных форм - текстовые поля, списки..

Как вариант полнотекстовый, можно использовать sphinx, но в вашем случае мне кажется не очень актуально

DV
На сайте с 01.05.2010
Offline
644
#3

Модуль искать. Например, http://sandev.pro/main/46-sort-fields-press-reliz.html

VDS хостинг ( http://clck.ru/0u97l ) Нет нерешаемых задач ( https://searchengines.guru/ru/forum/806725 ) | Перенос сайтов на Drupal 7 с любых CMS. ( https://searchengines.guru/ru/forum/531842/page6#comment_10504844 )
E
На сайте с 26.08.2011
Offline
62
#4

Там просто проблема в том, что эти параметры в базе данных не записаны, они лишь текст в описании к каждому товару, я так понимаю надо dle допилить чтобы в материале указывались интересующие параметры, как на скрине, а как по ним сделать поиск?

png skreen.png
E
На сайте с 26.08.2011
Offline
62
#5

http://sandev.pro/main/46-sort-fields-press-reliz.html похоже то, что надо, постараюсь связаться с автором по поводу покупки, бесплатного варианта я так понял нет

---------- Добавлено 16.06.2014 в 12:57 ----------

К сожалению, модуль больше не продается из-за сложностей в настройках...

lutskboy
На сайте с 22.11.2013
Offline
176
#6

есть еще один по доп полям. но забыл как называеться. ищите. он бесплатный

E
На сайте с 26.08.2011
Offline
62
#7
lutskboy:
есть еще один по доп полям. но забыл как называеться. ищите. он бесплатный

пока не нашел. вставил на сайт скрипт, он отображает но с работой беда какая то, мб кто подскажет где ошибка

<form name="search" action="" method="post">

<table border="0" cellpadding="10" cellspacing="10" width=200>

<tr>

<td><b>Диаметр</b><br />

<select name="du" id="du"><option selected="selected" value="none">---</option> <option value="15">15</option><option value="20">20</option><option value="25">25</option><option value="32">32</option><option value="40">40</option><option value="50">50</option><option value="65">65</option><option value="80">80</option><option value="100">100</option></select>

</td></tr>

<tr><td><b>Тип крана ГШК</b><br />

<select name="type" id="type"><option selected="selected" value="none">---</option><option value="muft">Муфтовый</option><option value="flanec">Фланцевый</option><option value="svarka">Сварной</option><option value="stucer">Штуцерный</option><option value="megflanec">Межфланцевый</option><option value="meof">С МЭОФ</option><option value="privod">С ручным приводом</option></select>

</td></tr>

<tr><td><b>Регулируемая среда<b><br />

<select name="sreda" id="sreda"><option selected="selected" value="none">---</option><option value="gas">Газ</option><option value="gidk">Жидкости</option></select>

</td></tr>

<tr>

<td><b>Рабочее давление</b><br />

<select name="pu" id="pu"><option selected="selected" value="none">---</option><option value="16">16</option><option value="25">25</option></select>

</td>

</tr>

<tr>

<td colspan="4">

<input type="button" name="poisk" id="poisk" value="Поиск" onClick="func_search()" />

<input type="button" name="clear" id="clear" value="Отмена" onClick="cancel()" />

</td>

</tr>

</table>

</form>

</div>

<script type="text/javascript">

/*Переменные для удобства*/

var du= document.getElementById("du");

var type = document.getElementById("type");

var sreda = document.getElementById("sreda");

var pu = document.getElementById("pu");

function func_search()

{

if (15.value == '15')

{

result.innerHTML ='http://site.ru/result';

}

jpg poisk.jpg
lutskboy
На сайте с 22.11.2013
Offline
176
#8

уважаемый. а как по вашему он должен работать. вы вставили по сути только форму. а обработчик формы у вас есть.???

E
На сайте с 26.08.2011
Offline
62
#9

function func_search()

{

if (15.value == '15')

{

result.innerHTML ='http://site.ru/result';

}

ну вот по идее при нажатии кнопки поиск при выбранном ду15 он должен чуть ниже формы показать ссылку http://site.ru/result т.к. я ему указал, что если выбрано ду 15 показать result.innerHTML ='http://site.ru/result';

но он этого не делает...

E
На сайте с 26.08.2011
Offline
62
#10

Починил. Работает

if (15.value == '15')

В этой строке, если по-русски:

Если значение переменной "15" равно 15, то...

Но нет нигде переменной "15"...

Логично предположить, что "15" надо поменять на "du"

Далее:

Если "du" равно 15, то при нажатии на кнопку "поиск" в переменную result innerHTML передается HTML-код...

Но переменная нигде не задана...

Добавляем div для вывода HTML

<div id="result"></div>

и переменную для удобства)

var result = document.getElementById("result");

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий