2014-01-18 65 views
0

表下面是我當前的代碼副本:正在與Smarty模板系統

<tbody> 
     {foreach key=num item=referral from=$referrals} 
     {if $referral.commission != '$0.00 USD'} 
    <tr> 
    <td>{$referral.date}</td> 
    <td>{$referral.service}</td> 
    <td>{$referral.amountdesc}</td> 
    <td>{$referral.commission}</td> 
    <td>{$referral.status}</td> 
    </tr> 
     {/if} 
     {foreachelse} 
     <tr> 
      <td colspan="6">{$LANG.norecordsfound}</td> 
     </tr> 
     {/foreach} 
    </tbody> 

表基本上顯示已獲得通過子公司下屬委員會。但是,如果佣金約爲$0.00 USD,則不會顯示該行,因爲從該轉介中沒有賺到錢。但是我碰到2個不同的問題:

  1. 如果子公司只提到人,他們已經從,該表的這一部分並沒有顯示收到$ 0.00包裝佣金。相反,它應該顯示{$LANG.norecordsfound}的語言,讓他們知道沒有佣金。相反,它只是顯示空白。

  2. 我的分頁表中有10條記錄每頁顯示。問題是,如果其中3個佣金獲得0.00美元,則只顯示該頁面上的7條記錄。我寧願刪除分頁,只是將$itemlimit設置爲9999,但我不知道如何做到這一點。

任何幫助,這將不勝感激。

+0

請理解,本網站對您提出的問題有效,如果答案有效,您可以通過點擊複選標記來接受**,以便社羣知道您的問題已得到解決。你能接受你的其他問題的答案嗎?如果您在嘗試幫助您時不確認或回覆人們的問詢,有些人不會幫助您。 –

+0

有趣,不知道我是如何錯過的。我繼續做了:) – user3205164

回答

0

也許你可以嘗試這種方式,而不是顯示空白。

<tbody> 
    {foreach key=num item=referral from=$referrals} 
    {if $referral.commission != '$0.00 USD'} 
     <tr> 
     <td>{$referral.date}</td> 
     <td>{$referral.service}</td> 
     <td>{$referral.amountdesc}</td> 
     <td>{$referral.commission}</td> 
     <td>{$referral.status}</td> 
     </tr> 
    {else} 
     <tr> 
      <td colspan="6">{$LANG.norecordsfound}</td> 
     </tr> 
    {/if} 
    {/foreach} 
</tbody> 

對於你的第二個問題,你可能不得不重組你的表。如果你從一開始就少於10個項目會發生什麼?

因爲我看不到你如何編碼你的分頁,也許你可以assign你的php代碼中的記錄數,然後在你的表代碼中smarty檢查它。

例如,如果$itemlimit顯示記錄的數量,那麼也許你可以做這樣的事情。

{if $itemlimit > 10} 
    {* show pagination or however you want to handle it *} 
{/if}