#26 2011-05-19 01:22

nictboom
Пользователь

Re: How-To: просмотренные пользователем товары

maks1m1 написал:

Теперь работает все. Спасибо огромное!

ну если на пиffko,
smile спасибо здесь: WM: Z255040886923, R104460203223, (WM предпочтительнее)
Yandex: 41001700114942

Неактивен

 

#27 2011-05-19 08:55

pehser
Пользователь

Re: How-To: просмотренные пользователем товары

nictboom написал:

попробуй так

Код:

<?php
 if (isset($productID) && $productID>0)
 {
    if (!isset($_SESSION["watched"]))
    $_SESSION["watched"]=$productID;
    elseif (!preg_match('/(^|,)'.$productID.'(,|$)/',$_SESSION["watched"])) $_SESSION["watched"] .=','.$productID;
 }
if (isset($_SESSION["watched"]))
{
$q = db_query('select productID, name, thumbnail from '.PRODUCTS_TABLE.' where enabled=1 and productID in ('.$_SESSION["watched"].') ORDER BY name ASC');
$result=array();
while($row = db_fetch_row($q))
{ $result[]=$row;
}
$smarty->assign('watched',$result);
}
unset($result,$row);
?>

Код:

{section name=i loop=5}
    <li>
        <a href="index.php?productID={$watched[i][0]}" title="{$watched[i][1]}">{$watched[i][1]}</a><br />
        <img src="./products_pictures/{$watched[i][2]}" alt="{$watched[i][1]}" />
    </li>
{/section}

при такой реализации вываливаются все промотреные товары и сортировка будет по имени

я предлогаю ограничит количество товаров до 5 и сделать сортировку с верху самые последнии товары внизу самые старые из 5 последних

для этого

Код:

$q = db_query('select productID, name, thumbnail from '.PRODUCTS_TABLE.' where enabled=1 and productID in ('.$_SESSION["watched"].') ORDER BY name ASC');

меняем на

Код:

$q = db_query('select productID, name, thumbnail from '.PRODUCTS_TABLE.' where enabled=1 and productID in ('.$_SESSION["watched"].') ORDER BY Field(productID,'.$_SESSION["watched"].') LIMIT 0,5');

Неактивен

 

#28 2011-05-19 18:22

nictboom
Пользователь

Re: How-To: просмотренные пользователем товары

логично. у себя я вывел в админку редактирование кол-во.
вот кстати вопросец: первый просмотренный не отображается в списке. то есть, человек пролобал 7-10 позиций, а лимит выводимых 5, и при заходе опять же на первую позицию, этот товар в просмотренных уже не отображается. я так понимаю в конце списка, а нужна актуальность: какой счмотришь, тот и в первую очередь отображается.

Отредактировано nictboom (2011-05-19 18:23)

Неактивен

 

#29 2011-05-19 18:29

pehser
Пользователь

Re: How-To: просмотренные пользователем товары

это по тому что в elseif (!preg_match('/(^|,)'.$productID.'(,|$)/',$_SESSION["watched"])) $_SESSION["watched"] .=','.$productID;

что говорит о том что если в сесии у нас уже есть id этого товара то не добовлять можно либо добовлять без это проверки тогда унас при каждом заходе в этот товар он будет добовляться либо придумать другой алгоритм

Неактивен

 

#30 2011-07-22 12:22

goldg
Пользователь

Re: How-To: просмотренные пользователем товары

"создаем в паке темы фаил watched.tpl.html"
А это где именно? В какой папке? Еще не до конца просто разбираюсь во всех определениях )
И еще у меня шоп-скрипт (купил на днях), я смогу такую штуку поставить ?

Неактивен

 

#31 2011-07-22 23:40

nictboom
Пользователь

Re: How-To: просмотренные пользователем товары

goldg, эта реализация для Lego Edition SP и частично для SSfree. Если у Вас WASS или Premium обратитесь к pehser, или mask Вам помогут.

Неактивен

 

#32 2013-12-27 01:47

b245816
Пользователь

Re: How-To: просмотренные пользователем товары

А при следующем заходе на сайт сохраняется ли список просмотренных товаров для пользователя?

Неактивен

 

Board footer

Powered by PunBB