LiveInternetMail.ru
Форум русской поддержки Joomla!® CMS
28.05.2012, 02:46:54 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
   
   Начало   Поиск Joomla 1.7 FAQ Joomla 1.5 FAQ Joomla 1.0 FAQ Правила форума Новости Joomla Войти Регистрация Помощь  
Страниц: 1 2 3 [4] 5   Вниз
  Добавить закладку  |  Печать  
Автор Тема: Компонент и модуль поиска товаров VirtueMart 1.0.15 на Ajax  (Прочитано 39008 раз)
0 Пользователей и 2 Гостей смотрят эту тему.
Arkadiy
Группа развития
*****

Репутация: +244/-5
Offline Offline

Сообщений: 4895


Былененький он зел.


« : 30.06.2009, 16:52:26 »

Эта связка задумывалась для того, чтобы свести к минимуму или совсем уничтожить возможность попадания в "молоко" при выборе параметров поиска.
Модуль служит для задания условий поиска, а компонент (пока) только для вывода результатов.
Ищет по артикулу, категории, производителю, типу и характеристикам типов товара, по цене.
Поля выбора настраиваются в админке модуля.
Ajax работает  на библиотеке jquery.

Ограничения: характеристик в типе до 5; пока не придумал как быть с характеристиками в которых присутствует мультивыбор значений уже придумал.

Устанавливать только связкой, порознь не работают.

Посмотреть можно здесь: http://aqua.barier-cs.com/catalog/index.html

* com_vm_ext_search_03b.zip (12.08 Кб - загружено 2057 раз.)
* mod_vm_ext_search_03b.zip (23.9 Кб - загружено 1981 раз.)
« Последнее редактирование: 09.07.2009, 09:51:16 от Arkadiy » Записан
 
secretlive
Осваиваюсь на форуме
***

Репутация: +0/-0
Offline Offline

Пол: Мужской
Сообщений: 60


« Ответ #91 : 22.10.2009, 19:57:45 »

 а как-то можно чтобы родительские категории были выделить жирным шрифтом, а подразделы оставались обычными?
Записан
Arkadiy
Группа развития
*****

Репутация: +244/-5
Offline Offline

Сообщений: 4895


Былененький он зел.


« Ответ #92 : 26.10.2009, 08:30:27 »

Код:
function list_tree($category_id="", $cid='0', $level='0', $selected_categories=Array() )
{

$ps_vendor_id = $_SESSION["ps_vendor_id"];
$db = new ps_DB;

$level++;

$q = "SELECT category_id, category_child_id,category_name FROM #__{vm}_category,#__{vm}_category_xref ";
$q .= "WHERE #__{vm}_category_xref.category_parent_id='$cid' ";
$q .= "AND #__{vm}_category.category_id=#__{vm}_category_xref.category_child_id ";
$q .= "AND #__{vm}_category.vendor_id ='$ps_vendor_id' ";
$q .= "AND #__{vm}_category.category_publish ='Y' ";
$q .= "ORDER BY #__{vm}_category.list_order, #__{vm}_category.category_name ASC";
$db->setQuery($q);   $db->query();
          if ($level == 1) $style = "style='font-weight:bold;'";
          else  $style = "";
while ($db->next_record()) {
$child_id = $db->f("category_child_id");
if ($child_id != $cid) {
$selected = ($child_id == $category_id)? "selected=\"selected\"" : "";
if( $selected == "" && @$selected_categories[$child_id] == "1") {
$selected = "selected=\"selected\"";
}
echo "<option $style $selected value=\"$child_id\">\n";
}
for ($i=0;$i<$level;$i++) {
echo "&#151;";
}
echo "|$level|";
echo "&nbsp;" . $db->f("category_name");
echo "</option>";
list_tree($category_id, $child_id, $level, $selected_categories);
}
   }
вместо той-же функции в \modules\mod_vm_ext_search.php
Записан
terr
Завсегдатай
*****

Репутация: +10/-4
Offline Offline

Пол: Мужской
Сообщений: 750


Ученик html-я


« Ответ #93 : 28.10.2009, 17:21:25 »

палучилось спасиба
Записан
secretlive
Осваиваюсь на форуме
***

Репутация: +0/-0
Offline Offline

Пол: Мужской
Сообщений: 60


« Ответ #94 : 11.11.2009, 00:14:31 »

а как сделать чтобы при выводе товара по запросу выводило не кнопка добавить в корзину, а что бы выводило ссылка подробней?
Записан
Arkadiy
Группа развития
*****

Репутация: +244/-5
Offline Offline

Сообщений: 4895


Былененький он зел.


« Ответ #95 : 11.11.2009, 07:30:36 »

а как сделать чтобы при выводе товара по запросу выводило не кнопка добавить в корзину, а что бы выводило ссылка подробней?
кнопка добавить в корзину убирается в настройке компонента. Подробнее можно сделать скопировав код наименования товара и заменив наименование на подробнее.
Записан
terr
Завсегдатай
*****

Репутация: +10/-4
Offline Offline

Пол: Мужской
Сообщений: 750


Ученик html-я


« Ответ #96 : 11.12.2009, 11:22:56 »

как переименовать кнопку поиска в русскую, выборки по ценам нет выбираеш от 16000 цену выдоает меньше  запроса?
Записан
Arkadiy
Группа развития
*****

Репутация: +244/-5
Offline Offline

Сообщений: 4895


Былененький он зел.


« Ответ #97 : 11.12.2009, 14:48:17 »

найди в \components\com_vm_ext_search\vm_ext_search.php
Код:
$pf = mosGetParam( $_REQUEST, 'pf',0);
$pt = mosGetParam( $_REQUEST, 'pt',0);
там может быть понапутано с pf pt. Должно быть как написал.
кнопка переименовывается в файле модуля mod_vm_ext_search.php
Код:
<input class="button" type="submit" name="Поиск" value="Поиск" />
Записан
sashasaturn
Захожу иногда
**

Репутация: +0/-0
Offline Offline

Сообщений: 16


« Ответ #98 : 12.12.2009, 04:30:42 »

Здраствуйте
Хочу адаптировать Ваш компонент под свою задачу
Хочу чтоб отображались сразу все поля на форме без выбора типа и без пошаговых виборок
Arkadiy если не трудно схематично обясните где делать правки
Записан
Arkadiy
Группа развития
*****

Репутация: +244/-5
Offline Offline

Сообщений: 4895


Былененький он зел.


« Ответ #99 : 12.12.2009, 07:42:37 »

править надо файл модуля, вставлять туда код из хелпера компонента, но без пошаговой выборки это будет равняться расширенному поиску VirtueMart.
Записан
terr
Завсегдатай
*****

Репутация: +10/-4
Offline Offline

Пол: Мужской
Сообщений: 750


Ученик html-я


« Ответ #100 : 14.12.2009, 10:45:39 »

Цитировать
Функция list_tree в mod_vm_ext_search.php
Код:
for ($i=0;$i<$level;$i++) {
echo "&#151;";
}
выводит дефисы в нужном количестве
Код:
echo "|$level|";
выводит цифру.


ачто вывордить ____ полосочку перед цифрой и как туда вставить пробелы или вообще убратьь?

Цитировать
найди в \components\com_vm_ext_search\vm_ext_search.php
Код:
$pf = mosGetParam( $_REQUEST, 'pf',0);
$pt = mosGetParam( $_REQUEST, 'pt',0);
там может быть понапутано с pf pt. Должно быть как написал.

у меня вот так и всеровно выборка неправильная (
тоесть тема цены от и до не раскрыта

Код:
$pf = mosGetParam( $_REQUEST, 'pf',0);
$pt = mosGetParam( $_REQUEST, 'pt',0);
$prod_ids = $_REQUEST['product_ids'];

и еще в ие (осле) окошко категорий не разворачивается на всю динну букв

а востальном спасибо памагло
« Последнее редактирование: 14.12.2009, 11:24:37 от terr » Записан
Arkadiy
Группа развития
*****

Репутация: +244/-5
Offline Offline

Сообщений: 4895


Былененький он зел.


« Ответ #101 : 14.12.2009, 13:29:37 »

Код:
if ((!empty($pf)) && (!empty($pt))) {
if($pf==$pt) {
$q .= "AND ". $final_price_query . " = " . floatval($pt). " ";
} elseif (floatval($pf)<floatval($pt)) {
$q .= "AND ". $final_price_query . " >= " . floatval($pf). " AND " . $final_price_query . " <= " . floatval($pt). " ";
} else {
$q .= "AND ". $final_price_query . " <= " . floatval($pf). " AND " . $final_price_query . " >= " . floatval($pt). " ";
}
} else if ((empty($pf)) && (!empty($pt))) {
$q .= "AND ". $final_price_query . " <= " . floatval($pt). " ";
} else if ((!empty($pf)) && (empty($pt))) {
$q .= "AND ". $final_price_query . " >= " . floatval($pf). " ";
}
тогда здесь посмотри.

Цитировать
и еще в ие (осле) окошко категорий не разворачивается на всю динну букв
так осел работает.
Записан
terr
Завсегдатай
*****

Репутация: +10/-4
Offline Offline

Пол: Мужской
Сообщений: 750


Ученик html-я


« Ответ #102 : 14.12.2009, 17:16:28 »

Код:
if ((!empty($pf)) && (!empty($pt))) {
if($pf==$pt) {
$q .= "AND ". $final_price_query . " = " . floatval($pt). " ";
} elseif (floatval($pf)<floatval($pt)) {
$q .= "AND ". $final_price_query . " >= " . floatval($pf). " AND " . $final_price_query . " <= " . floatval($pt). " ";
} else {
$q .= "AND ". $final_price_query . " <= " . floatval($pf). " AND " . $final_price_query . " >= " . floatval($pt). " ";
}
} else if ((empty($pf)) && (!empty($pt))) {
$q .= "AND ". $final_price_query . " <= " . floatval($pt). " ";
} else if ((!empty($pf)) && (empty($pt))) {
$q .= "AND ". $final_price_query . " >= " . [b][color=red]floatval($pf).[/color][/b] " ";
}

тут касяк был спасиб выручил, и последнее
Цитировать
Функция list_tree в mod_vm_ext_search.php
Код:
Код:
for ($i=0;$i<$level;$i++) {
echo "—";
}
выводит дефисы в нужном количестве
Код:
echo "|$level|";
выводит цифру.


ачто вывордить ____ полосочку перед цифрой и как туда вставить пробелы или вообще убратьь?

Собствено цыфра убралась а полоса каторая была перед ней асталась)))
Записан
Arkadiy
Группа развития
*****

Репутация: +244/-5
Offline Offline

Сообщений: 4895


Былененький он зел.


« Ответ #103 : 15.12.2009, 06:47:24 »

убери
Код:
for ($i=0;$i<$level;$i++) {
echo "—";
}
Записан
terr
Завсегдатай
*****

Репутация: +10/-4
Offline Offline

Пол: Мужской
Сообщений: 750


Ученик html-я


« Ответ #104 : 15.12.2009, 09:33:27 »

Цитировать
убери
Код:
for ($i=0;$i<$level;$i++) {
echo "—";
}

Все спасибо все работает как часы, надеюсь тема паможет не только мене)))
Записан
shaman81
Захожу иногда
**

Репутация: +0/-0
Offline Offline

Сообщений: 10


« Ответ #105 : 21.12.2009, 15:30:07 »

Прочитал ветку, но такой проблемы так и не нашёл. В результатах поиска товары выводятся "лестницей" как-будто сбита разметка... где смотреть?
Записан
Arkadiy
Группа развития
*****

Репутация: +244/-5
Offline Offline

Сообщений: 4895


Былененький он зел.


« Ответ #106 : 21.12.2009, 16:20:33 »

Сейчас некогда смотреть, там была проблема - из-за включения/выключения какой-то опции закрывающий тег не выводился. Я думал что уже исправил, здесь по-моему тоже обсуждалось. Посмотри еще в этой теме http://joomlaforum.ru/index.php/topic,69642.msg511924.html
Записан
shaman81
Захожу иногда
**

Репутация: +0/-0
Offline Offline

Сообщений: 10


« Ответ #107 : 21.12.2009, 16:28:28 »

Да, всё правильно... Когда в опция ставишь "Показывать кнопку "купить": нет" то всё съезжает. Буду разбираться.
Записан
Arkadiy
Группа развития
*****

Репутация: +244/-5
Offline Offline

Сообщений: 4895


Былененький он зел.


« Ответ #108 : 22.12.2009, 07:45:00 »

\components\com_vm_ext_search\vm_ext_search.php
Код:
if( !empty($show_add_to_cart_in_search_result) )
{
?>
<br />

<form action="<?php echo  $mm_action_url ?>index.php" method="post" name="addtocart" id="addtocart">
    <input type="hidden" name="option" value="com_virtuemart" />
    <input type="hidden" name="page" value="shop.cart" />
    <input type="hidden" name="Itemid" value="<?php echo ps_session::getShopItemid(); ?>" />
    <input type="hidden" name="func" value="cartAdd" />
    <input type="hidden" name="prod_id" value="<?php echo $db->f("product_id"); ?>" />
    <input type="hidden" name="product_id" value="<?php echo $db->f("product_id"); ?>" />
    <input type="hidden" name="quantity" value="1" />
    <input type="hidden" name="set_price[]" value="" />
    <input type="hidden" name="adjust_price[]" value="" />
    <input type="hidden" name="master_product[]" value="" />
    <input style="border: medium none ; background: transparent url(<?php $mosConfig_live_site ?>/components/com_virtuemart/shop_image/ps_image/add-to-cart_blue.gif) no-repeat scroll left center; text-align: center; width: 160px; height: 35px; cursor: pointer; font-weight: bold; font-family: inherit; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; vertical-align: middle;" value="Купить" title="Купить" type="submit">
    </form>

<br />

<hr />
<?php
}
заменить на
Код:
if( !empty($show_add_to_cart_in_search_result) )
{
?>
<br />

<form action="<?php echo  $mm_action_url ?>index.php" method="post" name="addtocart" id="addtocart">
    <input type="hidden" name="option" value="com_virtuemart" />
    <input type="hidden" name="page" value="shop.cart" />
    <input type="hidden" name="Itemid" value="<?php echo ps_session::getShopItemid(); ?>" />
    <input type="hidden" name="func" value="cartAdd" />
    <input type="hidden" name="prod_id" value="<?php echo $db->f("product_id"); ?>" />
    <input type="hidden" name="product_id" value="<?php echo $db->f("product_id"); ?>" />
    <input type="hidden" name="quantity" value="1" />
    <input type="hidden" name="set_price[]" value="" />
    <input type="hidden" name="adjust_price[]" value="" />
    <input type="hidden" name="master_product[]" value="" />
    <input style="border: medium none ; background: transparent url(<?php $mosConfig_live_site ?>/components/com_virtuemart/shop_image/ps_image/add-to-cart_blue.gif) no-repeat scroll left center; text-align: center; width: 160px; height: 35px; cursor: pointer; font-weight: bold; font-family: inherit; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; vertical-align: middle;" value="Купить" title="Купить" type="submit">
    </form>


<?php
}
?>
               <br />

<hr />
                <?php
т.е. br и hr перенести за следующую скобку.
Записан
shaman81
Захожу иногда
**

Репутация: +0/-0
Offline Offline

Сообщений: 10


« Ответ #109 : 11.01.2010, 15:42:30 »

С кнопкой купить разобрался, спасибо!

Теперь по мере наполнения категорий возник другой вопрос, когда у товара много параметров, то поиск сбивается, почему-то не фильрует глубже 5 ступени по параметрам.

http://ahobby.ru

пример - через расширенный поиск ("поиск моделей" в верхнем меню) выбираем назначение - "лесовозы" - видим всего 3 модели с таким параметром

через модуль поиска - "Масштабные автомодели" - "Параметры модели" - "1/43" - "СССР" - "ЗИЛ" - "Грузовые" - "лесовозы". В итоге получаем все модели на шаге "Грузовые".

Почему так получается? Может быть есть какие-то ограничения по количеству параметров?
Записан
Arkadiy
Группа развития
*****

Репутация: +244/-5
Offline Offline

Сообщений: 4895


Былененький он зел.


« Ответ #110 : 11.01.2010, 16:46:46 »

так в принципе задумывалось - 5 уровней характеристик
Записан
shaman81
Захожу иногда
**

Репутация: +0/-0
Offline Offline

Сообщений: 10


« Ответ #111 : 11.01.2010, 23:35:40 »

Можно ли увеличить их число?
Записан
Arkadiy
Группа развития
*****

Репутация: +244/-5
Offline Offline

Сообщений: 4895


Былененький он зел.


« Ответ #112 : 12.01.2010, 07:14:22 »

можно, но довольно много переделывать.
Записан
Arkadiy
Группа развития
*****

Репутация: +244/-5
Offline Offline

Сообщений: 4895


Былененький он зел.


« Ответ #113 : 12.01.2010, 07:23:44 »

Добавлять в helper.php здесь
Код:
    //получаем переменные из скрипта

    $type_har1 = mosGetParam( $_REQUEST, 'type_har1');
  $type_har2 = mosGetParam( $_REQUEST, 'type_har2');
  $type_har3 = mosGetParam( $_REQUEST, 'type_har3');
  $type_har4 = mosGetParam( $_REQUEST, 'type_har4');
  $type_har5 = mosGetParam( $_REQUEST, 'type_har5');
и здесь
Код:
if ($i == 1) $type_h =  $type_har1;
                       if ($i == 2) $type_h =  $type_har2;
                       if ($i == 3) $type_h =  $type_har3;
                       if ($i == 4) $type_h =  $type_har4;
                       if ($i == 5) $type_h =  $type_har5;
и здесь
Код:
if ($i > 1) $q .= "WHERE `$ptpndo1`='$type_har1' ";
if ($i > 2) $q .= "&& `$ptpndo2`='$type_har2' ";
if ($i > 3) $q .= "&& `$ptpndo3`='$type_har3' ";
if ($i > 4) $q .= "&& `$ptpndo4`='$type_har4' ";
и здесь
Код:
if ($i == 1) $ptpndo1 = $param_name;
           if ($i == 2) $ptpndo2 = $param_name;
           if ($i == 3) $ptpndo3 = $param_name;
           if ($i == 4) $ptpndo4 = $param_name;
и здесь
Код:
//запрашиваем иды товара соответствующие выбранным характеристикам
$q1  = "SELECT distinct `product_id` FROM `#__{vm}_product_type_".$param_id."` ";
if ($type_har1 != 'undefined' && $type_har1 != 'null' && $type_har1 != '')
$q1 .= "WHERE `$ptpndo1`='$type_har1' ";
if ($type_har2 != 'undefined' && $type_har2 != 'null' && $type_har2 != '')
$q1 .= "&& `$ptpndo2`='$type_har2' ";
if ($type_har3 != 'undefined' && $type_har3 != 'null' && $type_har3 != '')
$q1 .= "&& `$ptpndo3`='$type_har3' ";
if ($type_har4 != 'undefined' && $type_har4 != 'null' && $type_har4 != '')
$q1 .= "&& `$ptpndo4`='$type_har4' ";
в модуле mod_vm_ext_search.php
Код:
function getTypeSelec()
{
    var type = jQuery('#vmdTypSel').val();
    var type_har1 = jQuery('#type_har1').val();
    var type_har2 = jQuery('#type_har2').val();
    var type_har3 = jQuery('#type_har3').val();
    var type_har4 = jQuery('#type_har4').val();
    var type_har5 = jQuery('#type_har5').val();
    if (type == '') {
jQuery("#vtsHarakt").slideUp("slow");
    return;
    }
jQuery("#vtsHarakt").html(spin);
jQuery("#vtsHarakt").slideDown("slow");
jQuery("#vtsHarakt").load('<?php echo $mosConfig_live_site;?>/index2.php?option=com_vm_ext_search&task=ajax&no_html=1&typ_har=1&product_type_id='+type+'&type_har1='+type_har1+'&type_har2='+type_har2+'&type_har3='+type_har3+'&type_har4='+type_har4+'&type_har5='+type_har5);
return;
}
Может еще что-то упустил.
Записан
shaman81
Захожу иногда
**

Репутация: +0/-0
Offline Offline

Сообщений: 10


« Ответ #114 : 12.01.2010, 11:39:26 »

Спасибо разобрался!! Теперь ищет как надо!  drink

Ещё вопрос, где задаётся кол-во товаров на страницу? Мне бы сделать не 10 а штук 30-40....

Вобще респект огромный за скрипт классная штука!


------

Нашёл в компоненте ссылку на админку и вспомнил, что вобще аминка есть ))) Ещё раз сенькс за помощь!
« Последнее редактирование: 12.01.2010, 14:56:23 от shaman81 » Записан
Arkadiy
Группа развития
*****

Репутация: +244/-5
Offline Offline

Сообщений: 4895


Былененький он зел.


« Ответ #115 : 12.01.2010, 16:50:29 »

разобрался - напиши как сделал, многим следующим будет интересно.
Записан
shaman81
Захожу иногда
**

Репутация: +0/-0
Offline Offline

Сообщений: 10


« Ответ #116 : 12.01.2010, 22:52:09 »

Вобщем, код почему-то немного другой, чем тот что выше, но вот что получилось:

в модуле mod_vm_ext_search.php:

Код:
var type_har1 = jQuery('#type_har1').val();
    var type_har2 = jQuery('#type_har2').val();
    var type_har3 = jQuery('#type_har3').val();
    var type_har4 = jQuery('#type_har4').val();
    var type_har5 = jQuery('#type_har5').val();
var type_har6 = jQuery('#type_har6').val();
    var print_kol = jQuery('#print_kol').val();

Код:
if ($i == 1) $type_h =  $type_har1;
                       if ($i == 2) $type_h =  $type_har2;
                       if ($i == 3) $type_h =  $type_har3;
                       if ($i == 4) $type_h =  $type_har4;
                       if ($i == 5) $type_h =  $type_har5;
if ($i == 6) $type_h =  $type_har6;


helper.php

Код:
//ïîëó÷àåì ïåðåìåííûå èç ñêðèïòà
    $type_har1 = mosGetParam( $_REQUEST, 'type_har1');
    if ($type_har1 != 'undefined' && $type_har1 != 'null' && $type_har1 != '')
    $type_har1 = urldecode(mosGetParam( $_REQUEST, 'type_har1'));
    $type_har2 = mosGetParam( $_REQUEST, 'type_har2');
    if ($type_har2 != 'undefined' && $type_har2 != 'null' && $type_har2 != '')
  $type_har2 = urldecode(mosGetParam( $_REQUEST, 'type_har2'));
    $type_har3 = mosGetParam( $_REQUEST, 'type_har3');
    if ($type_har3 != 'undefined' && $type_har3 != 'null' && $type_har3 != '')
  $type_har3 = urldecode(mosGetParam( $_REQUEST, 'type_har3'));
    $type_har4 = mosGetParam( $_REQUEST, 'type_har4');
    if ($type_har4 != 'undefined' && $type_har4 != 'null' && $type_har4 != '')
  $type_har4 = urldecode(mosGetParam( $_REQUEST, 'type_har4'));
    $type_har5 = mosGetParam( $_REQUEST, 'type_har5');
    if ($type_har5 != 'undefined' && $type_har5 != 'null' && $type_har5 != '')
  $type_har5 = urldecode(mosGetParam( $_REQUEST, 'type_har5'));
  if ($type_har6 != 'undefined' && $type_har6 != 'null' && $type_har6 != '')
  $type_har6 = urldecode(mosGetParam( $_REQUEST, 'type_har6'));

Код:
$debug = 'Îòëàäî÷íàÿ èíôîðìàöèÿ:<br />';
  $debug .= "product_type_id= ".$product_type_id."<br>";
  $debug .= "type_har1= ".$type_har1."<br>";
  $debug .= "type_har2= ".$type_har2."<br>";
  $debug .= "type_har3= ".$type_har3."<br>";
  $debug .= "type_har4= ".$type_har4."<br>";
   $debug .= "type_har5= ".$type_har5."<br>";
$debug .= "type_har6= ".$type_har6."<br>";

Код:
if ($i == 1) $type_h =  $type_har1;
                       if ($i == 2) $type_h =  $type_har2;
                       if ($i == 3) $type_h =  $type_har3;
                       if ($i == 4) $type_h =  $type_har4;
                       if ($i == 5) $type_h =  $type_har5;
if ($i == 6) $type_h =  $type_har6;

Код:
if ($i > 1){
if ($param_type[1] != 'V') $q .= "AND a.$ptpndo1 ='$type_har1' ";
else $q .= "AND a.$ptpndo1 LIKE '%$type_har1%' ";
}
if ($i > 2){
if ($param_type[2] != 'V') $q .= "AND a.$ptpndo2 = '$type_har2' ";
else $q .= "AND a.$ptpndo2 LIKE '%$type_har2%' ";
}
if ($i > 3){
if ($param_type[3] != 'V') $q .= "AND a.$ptpndo3 = '$type_har3' ";
else $q .= "AND a.$ptpndo3 LIKE '%$type_har3%' ";
}
if ($i > 4){
if ($param_type[4] != 'V') $q .= "&& a.$ptpndo4 = '$type_har4' ";
else $q .= "AND a.$ptpndo4 LIKE '%$type_har4%' ";
}

if ($i > 5){
if ($param_type[5] != 'V') $q .= "&& a.$ptpndo5 = '$type_har5' ";
else $q .= "AND a.$ptpndo5 LIKE '%$type_har5%' ";
}

Код:
if ($i == 1) $ptpndo1 = $param_name;
           if ($i == 2) $ptpndo2 = $param_name;
           if ($i == 3) $ptpndo3 = $param_name;
           if ($i == 4) $ptpndo4 = $param_name;
if ($i == 5) $ptpndo5 = $param_name;
  if ($i == 5) break;

Код:
if ($type_har1 != 'undefined' && $type_har1 != 'null' && $type_har1 != '')
{
if ($param_type[1] == 'V') $q1 .= "WHERE `$ptpndo1`LIKE '%$type_har1%' ";
else $q1 .= "WHERE `$ptpndo1`='$type_har1' ";
}

if ($type_har2 != 'undefined' && $type_har2 != 'null' && $type_har2 != '') {
if ($param_type[2] == 'V') $q1 .= "AND `$ptpndo2`LIKE '%$type_har2%' ";
else $q1 .= "AND `$ptpndo2`='$type_har2' ";
}


if ($type_har3 != 'undefined' && $type_har3 != 'null' && $type_har3 != '') {
if ($param_type[3] == 'V') $q1 .= "AND `$ptpndo3`LIKE '%$type_har3%' ";
else $q1 .= "AND `$ptpndo3`='$type_har3' ";
}

if ($type_har4 != 'undefined' && $type_har4 != 'null' && $type_har4 != '') {
if ($param_type[4] == 'V') $q1 .= "AND `$ptpndo4`LIKE '%$type_har4%' ";
else $q1 .= "AND `$ptpndo4`='$type_har4' ";
}

if ($type_har5 != 'undefined' && $type_har5 != 'null' && $type_har5 != '') {
if ($param_type[5] == 'V') $q1 .= "AND `$ptpndo5`LIKE '%$type_har5%' ";
else $q1 .= "AND `$ptpndo5`='$type_har5' ";
}


Не знаю, может есть что лишнее, но пока глюков не заметил, ищет нормально по 6 уровням.

-----

Не получается сделать категории жирными, делаю всё как в постах выше - результата нет. Вобще стиль не применяется почему-то никак.
« Последнее редактирование: 13.01.2010, 00:21:24 от shaman81 » Записан
shaman81
Захожу иногда
**

Репутация: +0/-0
Offline Offline

Сообщений: 10


« Ответ #117 : 14.01.2010, 21:24:41 »

Может ещё подскажете как бы вывести в результатах артикул товара и производителя?
Записан
Arkadiy
Группа развития
*****

Репутация: +244/-5
Offline Offline

Сообщений: 4895


Былененький он зел.


« Ответ #118 : 15.01.2010, 07:13:06 »

Ну артикул из таблицы товара берется, его легко вывести, а вот производителя надо доп. запрос писать. Из jos_vm_product_mf_xref брать его ид и из jos_vm_manufacturer брать имя. Все делать в файле компонента который не в админке.
Записан
shaman81
Захожу иногда
**

Репутация: +0/-0
Offline Offline

Сообщений: 10


« Ответ #119 : 17.01.2010, 01:57:13 »

Да, с артикулом всё несложно, т.к. он там в компоненте уже есть, а вот с производителем не могу осилить (((
Записан
myreg12345
Осваиваюсь на форуме
***

Репутация: +1/-0
Offline Offline

Сообщений: 54


« Ответ #120 : 20.01.2010, 17:37:07 »

А вот по этому вопрос:
"а как-то можно чтобы родительские категории были выделить жирным шрифтом, а подразделы оставались обычными?"
Если добавить так, то работает:
if ($level == 1) $style = "style='font-weight:bold;'";
else  $style = "";

А попытался придать разные стили не одному уровню, а нескольким уровням вот так:

if ($level == 1) $style = "style='font-weight:bold;color:red;'";
if ($level == 2) $style = "style='font-weight:bold;'";
else  $style = "";

срабатывает только уровень 2, если добавить еще условие на уровень 3 - то сработает только для 3го уровня - т.е., последнее условие.
Подскажите, пожалуйста, что не так?
« Последнее редактирование: 20.01.2010, 23:41:57 от myreg12345 » Записан
Страниц: 1 2 3 [4] 5   Вверх
  Добавить закладку  |  Печать  
 
Перейти в:  

Рейтинг@Mail.ru Rambler Top100 Powered by SMF 1.1.16 | SMF © 2006, Simple Machines

Joomlaforum.ru is not affiliated with or endorsed by the Joomla! Project or Open Source Matters.
The Joomla! name and logo is used under a limited license granted by Open Source Matters
the trademark holder in the United States and other countries.

LiveInternet