Регистрация
Вход через соцсети
Восстановление пароля

Вывод производителей товара текущей категории

Новый топик
14.01.2013, 22:07
Ответить | Цитировать
Егоров Денис Александрович

Зарегистрирован:
2013-01-14
Сообщений: 31

Здравствуйте, в стандартном компоненте "Магазин: Товар" в Шаблонах действий сделал фильтр по производителям (по полю Vendor). Вот код:
Код:

<form action='".($admin_mode ? "".$HTTP_ROOT_PATH."index.php?" : "".$SUB_FOLDER.$current_sub['Hidden_URL'].$current_cc['EnglishName'].".html" )."' method='get'>
<input type='hidden' name='action' value='index' />
<input type='hidden' name='admin_mode' value='".$admin_mode."' />
".( $inside_admin ? "<input type='hidden' name='inside_admin' value='1' />
<input type='hidden' name='cc' value='".$cc."' />
" : "")."
<div><b>Производитель</b>: <br>
<select name='Manufacturer_Name'>".listQuery("
SELECT DISTINCT `Vendor` FROM `Message57` WHERE Checked = 1 AND `Subdivision_ID` ORDER BY `Vendor` DESC",
"<option value=\$data[Subdivision_ID]>\$data[Vendor]")."</select>
<input type='hidden' name='srchPat[4]' value='2'>
</div>
<br>
<input value='".NETCAT_SEARCH_FIND_IT."' type='submit' />
</form>


Вопрос следующий: как сделать чтобы в Select'e отображались только производители текущей категории товара?
15.01.2013, 07:05
Ответить | Цитировать
Руслан Густокашин
Студия Вэлпис
Руслан Густокашин

Зарегистрирован:
2012-02-06
Сообщений: 869

А какое поле компонента является категорией товара? Или речь идет о разделе сайта (поле Subdivision_ID sql-таблицы компонента)?
Если последнее, то нужно запрос откорректировать так:
... AND `Subdivision_ID`='$sub' ...

15.01.2013, 08:57
Ответить | Цитировать
Егоров Денис Александрович

Зарегистрирован:
2013-01-14
Сообщений: 31

Спасибо!
15.01.2013, 13:48
Ответить | Цитировать
Егоров Денис Александрович

Зарегистрирован:
2013-01-14
Сообщений: 31

Появился новый вопрос: как сделать чтобы option принимал select='selected' когда мы выбираем в селекте?
15.01.2013, 14:08
Ответить | Цитировать
Руслан Густокашин
Студия Вэлпис
Руслан Густокашин

Зарегистрирован:
2012-02-06
Сообщений: 869

Ну как-то так примерно:
<option
\".('$Manufacturer_Name'==\$data[Subdivision_ID] ? \" selected='selected' \":NULL).\"
value=\$data[Subdivision_ID]>

18.01.2013, 08:21
Ответить | Цитировать
Егоров Денис Александрович

Зарегистрирован:
2013-01-14
Сообщений: 31

Руслан, спасибо за ценную информацию!
Немного поразмыслив получилось вот что:

Код:

<div>
<span>Производитель:</span>
<select id='Manufacturer_Name' name='srchPat[0]'>
<option value=''>Все</option>
";
$sql = $db->get_results("SELECT DISTINCT Vendor FROM Message57 WHERE Checked = 1 AND Subdivision_ID ='".$sub."' ORDER BY Vendor ASC");
$sql_i = count ($sql);
for ($number = 0; $number < $sql_i; $number++)
{
$seller = get_object_vars($sql[$number]);
$searchForm .= "<option ".opt($srchPat[0]==$seller[Vendor], 'selected')." value='".$seller[Vendor]."'>".$seller[Vendor]."</option>";
}
$searchForm .= "
</select>
</div>

Надеюсь пригодится)
21.01.2013, 13:04
Ответить | Цитировать
Руслан Густокашин
Студия Вэлпис
Руслан Густокашин

Зарегистрирован:
2012-02-06
Сообщений: 869

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

198 196 2013-01-21 13:04:14 12848
Описание проекта