Разный вариант вывода выборки по четности-нечетности номера записи

Tomas

Новичок
Разный вариант вывода выборки по четности-нечетности номера записи

Получаем набор, передаем в html

<?
$products = getGoods( );

$smarty->assign( "products", $products );
$smarty->assign( "page", $files[ "products" ] );
$smarty->display( $files[ "products" ][ "FILE" ] );
?>

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

код такой :

{foreach item=products from=$products}

{if products is even}
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr valign="top">
<td>
<a href="product.php?pID={$products.IDGOODS}" style="color:#000000;text-decoration:none;">
<img src="images/goods/{$products.IM_NAME}" border="0" hspace="10" />
</a>
</td>
<td>
<p align="justify">
<a href="product.php?pID={$products.IDGOODS}"><h1>{$products.name_brand} {$products.NAME_RUS|replace:"[tm]":"<b>&trade;</b>"|replace:"[c]":"&copy;"}</h1></a>
<b>{$products.SHORT_NOTE_RUS}</b><br /><br />
{$products.NOTE_RUS|truncate:255:"...":false|replace:"[tm]":"<sup><font style='font-size:10px;'>TM</font></sup>"|replace:"[c]":"&copy;"}
</p>
</td>
</tr>
</table>
{else}
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr valign="top">
<td>
<p align="justify">
<a href="product.php?pID={$products.IDGOODS}"><h1>{$products.name_brand}&nbsp;{$products.NAME_RUS}</h1></a>
<b>{$products.SHORT_NOTE_RUS}</b><br /><br />
{$products.NOTE_RUS|truncate:255:"...":false}
</p>
</td>
<td>
<a href="product.php?pID={$products.IDGOODS}" style="color:#000000;text-decoration:none;">
<img src="images/goods/{$products.IM_NAME}" border="0" hspace="10" />
</a>
</td>
</tr>
</table>
{/if}

{/foreach}


выводится чушь ....
первые две слева, все остальное справа ...
Где грабли ?
 

zerkms

TDD infected
Команда форума
чётность проверяй вот так:

{if $key is div by 2}
значение чётное
{else}
значение нечётное
{/if}

от этого и пляши....
 

Tomas

Новичок
Оки ! Псиб !
Хотя проблемму порешил ужо - пронумеровал строки в выборке и по этому номеру {if $products.recnum is even} ...
получилось !
 

zerkms

TDD infected
Команда форума
440hz
;) из благих намерений - в этот раз во имя простоты - чтобы человек, захотев разделить на 3 столбца...ещё чего то... не бежал сюда задавать вопрос - "как сделать" а сам взял и поменял 2 на 3
 
Сверху