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

Интернет магазин, вывод товаров на главной не работает!

Новый топик
06.01.2008, 11:18
Ответить | Цитировать
Гость
Гость

Установлен NetCat 3.0 (обновление 301) Standart с модулем Интернет-магазин.

В подразделе интернет-магазин-> книги, там товары

Нужно на главной вывести эти товары, причем в другом дизайне
командой ".s_list_class(82,50, "&recNum=2")." (82 - номер раздела, 50 - номер компонента в разделе) вывести не получается, пишет ошибку
Warning: s_list_class(82,50): error in SQL query in /var/www/vhosts/site.ru/httpdocs/netcat/require/s_list.inc.php on line 358

почему так происходит??? как вывести последние несколько товаров на главную в другом дизайне??
если добавить компонент новости в какой-нибудь раздел, функцией s_list_class последние новости выводятся без проблем
09.01.2008, 14:10
Ответить | Цитировать
h/z

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

s_list_class надеюсь в макете дизайна титульной страницы прописан ?
10.01.2008, 10:59
Ответить | Цитировать
Гость
Гость

да, на титульной, из другого раздела последние 2 новости выводятся этой же функцией без проблем!

Выводить точно нужно функцией s_list_class ? может нужно как-то изменить компонен интернет-магазина чтобы можно было выводить товары??
11.01.2008, 09:40
Ответить | Цитировать
Гость
Гость

вроде бы нужно написать в системных настройках шаблона, в конце
if ($isTitle) { $query_order = "a.Created DESC"; }
а в макете
".s_list_class(ID_раздела,ID_компонента в разделе, "isTitle=1&recNum=6")."

но так тоже не работает...
10.01.2008, 19:03
Ответить | Цитировать
h/z

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

надо посмотреть системные настройки компонента магазина.. какой-то где-то там конфликтный мускуль запрос получается при подключении через s_list_class
11.01.2008, 12:31
Ответить | Цитировать
h/z

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

приведите полный код компонента,
хедер, футер,системные настройки и т.д.
15.01.2008, 12:49
Ответить | Цитировать
Гость
Гость

Префикс списка объектов:
Код:
$f_AdminCommon
".
/* Если мы в режиме редактирования, то убираем "корзину" */
(!$admin_mode?"
<!--<div style='text-align:right; float:right; color:#333; padding:8px 12px 8px 60px; margin:5px 0; background:#EDEFF0 url(/netcat/admin/skins/default/img/i_module_netshop_big.gif) no-repeat 10px 50%'>
$GLOBALS[Netshop_CartSum]<br>
$GLOBALS[Netshop_OrderLink]
</div>
<div style='clear:both'></div>-->
":NULL)."


Объект в списке:
Код:
";
// если мы в режиме редактирования, то далее следует формирование элементов управление товарами
if($admin_mode)
{
// формируем ссылку на добавление дочернего объекта
$add_child_link = "/netcat/add.php?catalogue=$catalogue&sub=$sub&cc=$cc&f_Parent_Message_ID=$f_RowID&curPos=$curPos";

// создаем строки таблицы дочерних товаров если они существуют
$f_this_item_variants = listQuery("SELECT * FROM Message$classID WHERE Parent_Message_ID=$f_RowID ORDER BY Priority DESC",'
<tr>
<td style='border-bottom:1px solid #D3D2C9; font-size:100%;' width='60%'>

<img src='/netcat/admin/images/arrow_sec.gif' width='14' height='10' alt=''>
<b>$data[Message_ID].</b>
<a href='/netcat/full.php?catalogue=$GLOBALS[catalogue]&sub=$GLOBALS[sub]&cc=$GLOBALS[cc]&message=$data[Message_ID]'>$data[Name]</a>
</td>
<td style='border-bottom:1px solid #D3D2C9; font-size:100%;' width='15%' align='right'>
<nobr>
".($data[$GLOBALS["shop"]->PriceColumn]
? $GLOBALS["shop"]->FormatCurrency($data[$GLOBALS["shop"]->PriceColumn], $data[$GLOBALS["shop"]->CurrencyColumn])
: "цена не указана")."
</nobr>
</td>
<td style='border-bottom:1px solid #D3D2C9; font-size:100%;'> </td>
<td align='right' style='border-bottom:1px solid #D3D2C9;' width='1%'>
<nobr>
<a href='$GLOBALS[HTTP_ROOT_PATH]message.php?catalogue=$GLOBALS[catalogue]&sub=$GLOBALS[sub]&cc=$GLOBALS[cc]&message=$data[Message_ID]&curPos=$GLOBALS[curPos]'>
<img src='/netcat/admin/images/edit.gif' border='0' width='18' height='18' alt=''.NETCAT_MODERATION_CHANGE.''></a>

<a href='$GLOBALS[HTTP_ROOT_PATH]message.php?catalogue=$GLOBALS[catalogue]&sub=$GLOBALS[sub]&cc=$GLOBALS[cc]&message=$data[Message_ID]&delete=1&curPos=$GLOBALS[curPos]'>
<img src='/netcat/admin/images/kill.gif' border='0' width='18' height='18' alt=''.NETCAT_MODERATION_DELETE.''></a>

<a href='$GLOBALS[HTTP_ROOT_PATH]message.php?catalogue=$GLOBALS[catalogue]&sub=$GLOBALS[sub]&cc=$GLOBALS[cc]&message=$data[Message_ID]&admin_mode=1&posting=1&curPos=$GLOBALS[curPos]&checked=".($data["Checked"] ? 1 : 2)."'>
<img src='/netcat/admin/images/check".opt(!$data["Checked"], "_g").".gif' border='0' width='18' height='18' alt='".($data["Checked"] ? NETCAT_MODERATION_TURNTOON : NETCAT_MODERATION_TURNTOOFF )."'></a>
</nobr>
</td>
</tr>');
}

// далее идёт непосредственно вывод для фрон-фейса

$result .="
$f_AdminButtons
<form method=post action='/netcat/modules/netshop/post.php' style='margin:0'>
<table width='100%' border='0' cellpadding='0' cellspacing='0' >
<tr>
<td align='left' valign='top' width='185' height='185' class='price_def'>
".opt($f_Image, "<img src='$f_Image_url' alt='$f_Name' width='185' height='185'>")."
</td>
<td align='left' valign='top' style='padding-left: 15px;'>
<a href='$fullLink' class='tit' title='Подробное описание'>$f_Name</a>
".opt($f_Description, "<p>$f_Description</p>")."
<span class='price'>".$shop->FormatCurrency($Price, $Currency, true, "0")."</span><br><br>
".(!$admin_mode?"
".(($db->get_var("SELECT COUNT(*) as n FROM Message$classID WHERE Parent_Message_ID=$f_RowID AND Checked=1") >> 0)?"<a href='$fullLink' id="podr">Подробнее...</a>":"
<input type='hidden' name='redirect_url' value='$GLOBALS[uri_path]'>
<input type='hidden' name='cart_mode' value='add'>
<input type='hidden' name='cart[$classID][$f_RowID]' value='1'>
<input type='submit' value='в корзину'>
")."
": NULL)."
</td>
</tr>
</table>
</form>
".
/*если мы в режиме редактирования, то далее едёт список дочерних товаров сформированный*/
($admin_mode? " выше.
<div style='margin:14px 0px 6px;'>
<img src='/netcat/admin/images/add.gif' width='18' height='18' style='vertical-align:middle' border='0' alt='Добавить вариант товара'>
<a href='$add_child_link'>Добавить вариант товара</a>
</b>
</div>
<table cellspacing='0' cellpadding='0' width='80%' style='border-collapse:collapse;'>
$f_this_item_variants
</table>" : NULL)."
<br>


Суффикс списка объектов:
Код:
<br />".($totRows>$f_RowNum && !$nc_title  ? "<div class='nc_pagination'>Страницы: ".browse_messages($cc_env, 5)."</div>" : "")."


Сортировать объекты по полю (полям)*: a.Priority
Заголовок страницы:$f_Name

Отображение объекта:
Код:
$f_AdminCommon
".
/* Если мы в режиме редактирования, то убираем "корзину" */
(!$admin_mode?"
<!--<div style='text-align:right; float:right; color:#333; padding:8px 12px 8px 60px; margin:5px 0; background:#EDEFF0 url(/netcat/admin/skins/default/img/i_module_netshop_big.gif) no-repeat 10px 50%'>
$GLOBALS[Netshop_CartSum]<br>
$GLOBALS[Netshop_OrderLink]
</div>
<div style='clear:both'></div>-->":NULL)."
<table width='80%' border='0' cellpadding='0' cellspacing='0' >
<tr>
<td align='left' valign='top' width='185' height='185' class='price_def'>
".opt($f_Image, "<img src='$f_Image_url' align=right />")."
</td>
<td align='left' valign='top' style='padding-left: 15px;'>
<p class='nazv2'>$f_Name</p>

".opt($f_Description, "<p>$f_Description</p>")."
".opt($f_Details, "<p>$f_Details</p>")."

<span class='price'>".$shop->FormatCurrency($Price, $Currency, true, "0")."</span></td></tr></table>";

// Список подчиненных объектов ------------

$this_item_variants = listQuery("SELECT *
FROM Message$classID
WHERE Parent_Message_ID=$f_RowID
AND Checked=1
ORDER BY Priority DESC",
// шаблон вывода подчиненных объектов:
'<tr>
<td style="padding-left: 200px;" width=80% >
<a href="{$GLOBALS[current_sub][Hidden_URL]}" .
opt_case($data["Keyword"], $data["Keyword"], $GLOBALS["current_sub"]["EnglishName"]) .
"_$data[Message_ID].html" target="_blank" id="podr">$data[Name]</a>
</td>
<td width=20% align=right><span class="price">
" . ($data[$GLOBALS["shop"]->PriceColumn]
? $GLOBALS["shop"]->FormatCurrency($data[$GLOBALS["shop"]->PriceColumn], $data[$GLOBALS["shop"]->CurrencyColumn])
: $GLOBALS["shop"]->FormatCurrency($GLOBALS["Price"], $GLOBALS["Currency"])
) . "</nobr>
</td>
<td > </td>
<td align=right width=1%><nobr>
<form method=post action="/netcat/modules/netshop/post.php" style="margin:0">
<input type=hidden name=redirect_url value="$GLOBALS[uri_path]">
<input type=hidden name=cart_mode value=add>
<input type=hidden name="cart[{$GLOBALS[classID]}][{$data[Message_ID]}]" value=1>
<input type=submit value="в корзину">
</form>
</td>
</tr>
');

if ($this_item_variants)
{
echo "<table cellspacing=0 cellpadding=5 width=80% style="border-collapse:collapse; clear: both">
$this_item_variants
</table>";
}
else // Если нет вариантов товара, показать одну общую кнопку "в корзину"
{
echo "<form method=post action='/netcat/modules/netshop/post.php' style='margin:0'>
<div align=left style='clear:both; margin: 10px 0px 0px 200px;'>
<input type=hidden name=redirect_url value='$GLOBALS[uri_path]'>
<input type=hidden name=cart_mode value=add>
<input type=hidden name='cart[$classID][$f_RowID]' value=1>
<input type=submit value='в корзину'>
</div>";
}
// --------

echo "
</form>



Системные настройки:
Код:
global $shop, $classID;
if(!isset($classID)){
$classID = $cc_env['Class_ID'];
}


// если у дочернего объекта не указана цена, берется цена родительского объекта
// для этого придется сделать JOIN
$query_join = " LEFT JOIN Message$classID as parent ON (a.Parent_Message_ID != 0 AND a.Parent_Message_ID=parent.Message_ID)";

$query_select = "IFNULL(a.$shop->PriceColumn, parent.$shop->PriceColumn) as Netshop_Price_Column,
IFNULL(a.$shop->CurrencyColumn, parent.$shop->CurrencyColumn) as Netshop_Currency_Column";

$result_vars = '$Price, $Currency';

if ($isTitle) { $query_order = "a.Created DESC"; }
06.04.2008, 21:57
Ответить | Цитировать
sitnik
QXSolutions

Зарегистрирован:
2007-12-27
Сообщений: 11

Такая же проблема. Удалось решить?
14.04.2008, 12:18
Ответить | Цитировать
sitnik
QXSolutions

Зарегистрирован:
2007-12-27
Сообщений: 11

в системных настройках компонента Товары в первой строке находиться строка:

global $shop, $ClassID;

удалите $ClassID, чтобы получилось следующее:

global $shop;
198 196 2008-04-14 12:18:23 9184
Описание проекта