2012-03-05 22 views
0

でエラーユーザー登録プログレスバーがステップ4で、ステップ3で134%と150%に設定されている間、ここでprogressbar.phpからのコードは次のとおりです。JOMSOCIAL:新規ユーザー登録プログレスバー

<?php 
class CProgressbarHelper{ 

    static public function getHTML($max=100, $currval=0, $barclass='outerpgbar', $barfillclass='innerpgbar'){ 

     if(!is_numeric($max) || !is_numeric($currval) || $max < 0 || $currval < 0) 
     return '<div>Progress bar cannot be generated properly</div>'; 

     $width = intval(($currval/$max) * 100) ; 
     $barclass = (!empty($barclass)) 
        ? 'class="'.$barclass.'"' 
        : 'style="background-color:white; height:.8em; border :1px solid #D0D0D0; margin-bottom:10px; padding:1px; "' ; 

     $barfillclass = (!empty($barfillclass)) 
        ? 'class="'.$barfillclass.'" style="width:'.$width.'%;"' 
        : 'style="width:'.$width.'%; height: 100%; background-color:blue; position:relative;"' ; 

     //class progressbarfill : inside of the progress bar 
     $html = '<div '.$barclass.' >'. 
        '<div '.$barfillclass.'></div>'. 
       '</div>'; 

     return $html; 
    } 
} 

私が持っています

$html .='<div class="outerpg"><div class="innerpgbar" style="width:'.($percentage/2).'%;"> '. $(percentage/2) .'%</div></div>'; 

$html .='<div class="outerpg"><div class="innerpgbar" style="width:'.$percentage.'%;"> '. $percentage .'%</div></div>'; 

から/administrator/components/com_community/installer.helper.phpのライン1055を変更することとしても、別のブログでそのような問題に対する答えを試してみました

しかし、まだ正しく動作していません。実際には、最初のユーザー登録ページでプログレスバーを半分にカットしています。

ここに画像をはっきりと表示することはできませんが、Jomsocial >> Demoに登録すれば分かります。実際には、エラーは表示されません。

答えて

1

$currvalの値がこの関数を呼び出したコードに渡されました。これは$maxよりも高い値です。 getHTML(100, 154)のようなものです(これは結果として154%を与えます)。 、あなたは100%よりも高い割合を避ける

この道($width = intval(($currval/$max) * 100);行の前に)

if ($currval > $max) $currval = $max; 

は、次の行を追加することができます。

関連する問題