Joomla 和 PHP Smarty 框架

Joomla and PHP Smarty Framework

我有一个使用 Joomla 3 和 PHP Smarty Framework(其中编写了组件)的网站

这是拍卖网站,我目前在使用 Smarty 时遇到了一些问题...

这是交易 - 当用户登录时,网站会显示他的所有出价,在出价历史记录中,标记为橙色。

我希望该网站仅在您的出价最高时才以橙色显示标出的出价。如果不是-什么都没有...

这是该部分代码的摘录:

{if $bid->userid==$userid}
{assign var="tr_class" value="auction_bids_mybid1"}
<a name = 'mybid' id = 'mybid'></a>
{/if}

这使用来自其他文件的 GetBestMethod 的变量:

        public function GetBestBid($userid = FALSE)

    {



        $db = JFactory::getDbo();



        $query = "SELECT * FROM #__bids AS b WHERE auction_id='$this->id' " . ($userid ? (' AND userid=' . $userid) : '') . "  ORDER BY bid_price DESC";

        $db->setQuery($query, 0, 1);



        $res = $db->loadObject();



        if (!$res) {

            $query = "SELECT * FROM `#__bids` AS `b` WHERE `auction_id`='$this->id'  ORDER BY                         `bid_price` DESC";

            $db->setQuery($query, 0, 1);

            $res = $db->loadObject();

        }



        return $res;

    }

所以,长话短说:

如果当前用户的出价最高,则标记该出价,否则什么都不标记。

我找到了解决方案:为了仅标记最高(最高)出价,您只需添加以下内容:

{if $bid->userid==$userid && $smarty.foreach.bids.index == 0}

就是这样 ;)