2016-04-25 74 views
-6

我很困惑。這麼簡單的事情。它只是不會「elseif」不能讓elseif工作

我需要的是這樣的:<?php if ($pscorelabel >= 21) : ?>做某事這樣做:<?php if ($pscorelabel >= 42) : ?>做別的。

我附上了代碼片段。請,我是一個小白菜,需要你的幫助。任何幫助將不勝感激。

<?php if ($showscore == '1') : ?> 
<div class="ipt_fsqm_up_number"> 
<h6> 
<?php $ui->print_icon_by_class('quill', false); ?> 
<?php printf(__('%2$s%% Average %1$s', 'ipt_fsqm'), $scorelabel, number_format_i18n(($avg_score * 100), 0)); ?> 
</h6> 

<?php endif; ?> 

<?php if ($pscorelabel >= 21) : ?> <div class="ipt_fsqm_up_meta"> 
<h6><?php $ui->print_icon_by_class('quill', false); ?> 
<?php printf(__('%2$s Total CPD Points %1$s', 'ipt_fsqm'), $finallabel, number_format_i18n(($pscorelabel * 1), 0)); ?> 
</h6> 
<?php elseif ($pscorelabel >= 42) : ?>                        
<div class="ipt_fsqm_up_meta"> 
<h6><?php $ui->print_icon_by_class('quill', false); ?> 
<?php printf(__('%2$s Total CPD Points %1$s', 'ipt_fsqm'), $finallabel, number_format_i18n($finallabel = 6, 0)); ?> 
</h6> 

<?php endif; ?> 
+2

請正確格式化你的代碼。 – Wavemaster

+0

首先擺脫結合標記和邏輯;) –

+0

使用非becaketed如果/然後語句與HTML中斷可能導致問題,您的代碼首先需要一些清理。下面的答案是正確的,你的42和21是交換的,因爲第二個真實的條件會在第一個真實的,第二個永遠不會達到。如果你想要兩個eval單獨忽略其他如果爲正常如果。 – Wobbles

回答

1

更新你的代碼,把> 42以上的條件,然後&> 21條件

<?php 
    if ($pscorelabel >= 42) { ?>                        
    <div class="ipt_fsqm_up_meta"> 
    <h6><?php $ui->print_icon_by_class('quill', false); ?><?php printf(__('%2$s Total CPD Points %1$s', 'ipt_fsqm'), $finallabel, number_format_i18n($finallabel = 6, 0)); ?></h6> 

    <?php 

    } elseif ($pscorelabel >= 21) { ?> <div class="ipt_fsqm_up_meta"> 
    <h6><?php $ui->print_icon_by_class('quill', false); ?><?php printf(__('%2$s Total CPD Points %1$s', 'ipt_fsqm'), $finallabel, number_format_i18n(($pscorelabel * 1), 0)); ?></h6> 


    <?php } ?> 
+0

我已經嘗試過,但仍然沒有快樂。任何其他想法? – user3003638

+0

您的情況下$ pscorelabel的價值是多少? –

+0

它目前爲100 – user3003638