Dismiss Notice
ВАШИ ПРАВА ОГРАНИЧЕНЫ!

Зарегистрируйтесь на форуме, чтобы стать полноценным участником сообщества!

Вывод числа рейтинга {rate}

Discussion in 'Вопросы- ответы' started by new, Nov 2, 2016.

02.11.16 в 22:17
new
03.11.16 в 11:56
4
4,176
0
  1. TopicStarter Overlay
    new

    new
    Забанен

    Joined:
    Aug 14, 2016
    Messages:
    537
    Best Answers:
    0
    Ratings:
    +242 / 0 / -0
    Доброго времени суток!

    DLE 10.6 вывод числа рейтинга реализован с помощью тега {rate}

    Для этого в файлах engine/modules/show.short.php и engine/modules/show.full.php

    После строки

    Code:
    $tpl->set( '{vote-num}', "<span id=\"vote-num-id-".$row['id']."\">".$row['vote_num']."</span>" );
    Добавлена строчка

    Code:
    $tpl->set( '{rate}', str_replace(",",".",round($row['rating']/max(1,$row['vote_num']),1)));

    В данный момент, если рейтинг целый, то ноль опускается, как сделать, чтобы ноль отображался после целого числа, к примеру вместо 7 - 7.0
     
    #1 new, Nov 2, 2016
    Last edited: Nov 3, 2016
  2. TopicStarter Overlay
    new

    new
    Забанен

    Joined:
    Aug 14, 2016
    Messages:
    537
    Best Answers:
    0
    Ratings:
    +242 / 0 / -0
  3. Ботяра

    Забанен

    Joined:
    Oct 10, 2015
    Messages:
    0
    Best Answers:
    54
    Ratings:
    +711 / 74 / -0
    @new, ночью я сплю обычно ;)
    это делает функция
    PHP:
    sprintf("%.2f"$value);
    в твоём случае скорее всего надо прописать:
    Code:
    $tpl->set( '{rate}', str_replace(",",".",sprintf("%.2f", round($row['rating']/max(1,$row['vote_num'])),1)));
    2f - это сколько знаков после запятой показывать. Если нужен один - то 1f.
     
    • Нравится Нравится x 1
  4. TopicStarter Overlay
    new

    new
    Забанен

    Joined:
    Aug 14, 2016
    Messages:
    537
    Best Answers:
    0
    Ratings:
    +242 / 0 / -0
    @byroot, :)

    Спасибо, но чуть не то, все работает, но данная функция округляет значение, то есть например вместо оценки 4.2 = 4.0, а мне нужно чтобы вместо 4 = 4.0, но чтобы не округляло десятые если там отличное от 0 число
     
  5. Ботяра

    Забанен

    Joined:
    Oct 10, 2015
    Messages:
    0
    Best Answers:
    54
    Ratings:
    +711 / 74 / -0
    • Нравится Нравится x 1
Яндекс.Метрика