Перейти к публикации
webil

PHP Немного дополнить рейтинг новости

Рекомендованные сообщения

webil

И так нужна помощь по рейтингу новостей, сам рейтинг я немного переделал но нужно его дополнить сейчас он выводит средний бал
К примеру все голосовали на 5 и голосов штук 10) он выводит следующие:
Ср. бал = 5 Голосов = 10

А я нуждаюсь в следующем:
Ср. бал = 5,000 Голосов = 10

т.е. мне нужен точный показатель вплоть до тысячных
чтоб стало как на скрине
post-15-0-40527300-1356033335.png
но увы сам я не знаю как реализовать это(

Код который сейчас у меня:

function ShowRating($id, $rating, $vote_num, $allow = true) {
    global $lang;
   
    if( $rating AND $vote_num ) $rating = round( ($rating / $vote_num), 1 );
    else $rating = 0;
    $rating1 = str_replace( ",", ".", $rating );
    $rating2 = $rating1 * 2 * 10;
   
    if( ! $allow ) {
	   
	    $rated = <<<HTML
<div class="ratebox"><div class="rating">
    <ul class="unit-rating">
	    <li class="current-rating" style="width:{$rating2}%;">{$rating2}</li>
    </ul>
</div></div>
<div class="rating2">{$rating1} {$vote_num}</div>
HTML;
	   
	    return $rated;
    }
   
    $rated .= <<<HTML
<div id='ratig-layer-{$id}'><div class="ratebox"><div class="rating">
	    <ul class="unit-rating">
	    <li class="current-rating" style="width:{$rating2}%;">{$rating2}</li>
  <li><a href="#" title="{$lang['useless']}" class="r1-unit" onclick="doRate('1', '{$id}'); return false;">1</a></li>
  <li><a href="#" title="{$lang['poor']}" class="r2-unit" onclick="doRate('2', '{$id}'); return false;">2</a></li>
  <li><a href="#" title="{$lang['fair']}" class="r3-unit" onclick="doRate('3', '{$id}'); return false;">3</a></li>
  <li><a href="#" title="{$lang['good']}" class="r4-unit" onclick="doRate('4', '{$id}'); return false;">4</a></li>
  <li><a href="#" title="{$lang['excellent']}" class="r5-unit" onclick="doRate('5', '{$id}'); return false;">5</a></li>
	    </ul>
</div></div>
<div class="rating2">{$rating1} {$vote_num}</div></div>
HTML;
   
    return $rated;
}
Изменено пользователем Андрей

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
webil

Методам хорошего друга добились следующего:

function ShowRating($id, $rating, $vote_num, $allow = true) {
    global $lang;
  
if( $rating AND $vote_num ) $ratinga = number_format($rating / $vote_num ,3,',','');
else $ratinga = '0,000';

if( $rating AND $vote_num ) $rating = round( ($rating / $vote_num), 1 );
    else $rating = 0;
 
$rating1 = str_replace( ",", ".", $rating );
    $rating2 = $rating1 * 2 * 10;
   
    if( ! $allow ) {
	   
	    $rated = <<<HTML
<div class="ratebox"><div class="rating">
    <ul class="unit-rating">
	    <li class="current-rating" style="width:{$rating2}%;">{$rating2}</li>
    </ul>
</div></div>
<div class="rating2">{$ratinga} {$vote_num}</div>
HTML;
	   
	    return $rated;
    }
   
    $rated .= <<<HTML
<div id='ratig-layer-{$id}'><div class="ratebox"><div class="rating">
	    <ul class="unit-rating">
	    <li class="current-rating" style="width:{$rating2}%;">{$rating2}</li>
  <li><a href="#" title="{$lang['useless']}" class="r1-unit" onclick="doRate('1', '{$id}'); return false;">1</a></li>
  <li><a href="#" title="{$lang['poor']}" class="r2-unit" onclick="doRate('2', '{$id}'); return false;">2</a></li>
  <li><a href="#" title="{$lang['fair']}" class="r3-unit" onclick="doRate('3', '{$id}'); return false;">3</a></li>
  <li><a href="#" title="{$lang['good']}" class="r4-unit" onclick="doRate('4', '{$id}'); return false;">4</a></li>
  <li><a href="#" title="{$lang['excellent']}" class="r5-unit" onclick="doRate('5', '{$id}'); return false;">5</a></li>
	    </ul>
</div></div>
<div class="rating2">{$ratinga} {$vote_num}</div></div>
HTML;
   
    return $rated;
}
Ура!)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Гость
Эта тема закрыта для публикации сообщений.

×
×
  • Создать...