Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Рейтинг автора в блоге 
:(
    Опции темы
alexey664655
Дата 12.8.2019, 16:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 25
Регистрация: 26.5.2012

Репутация: нет
Всего: нет



Прошу помощи, не могу сообразить, как сделать правильную формулу рейтинга автора в блоге.   
Имеется:
Код


$ratingsum; // Сумма всех голосов
$ratingcount; // Сумма всех проголосовавших
$contentsum;  // сумма всех статей автора

PM MAIL   Вверх
ksnk
Дата 12.8.2019, 16:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прохожий
****


Профиль
Группа: Комодератор
Сообщений: 6855
Регистрация: 13.4.2007
Где: СПб

Репутация: 96
Всего: 386



А голос - это что? Что-то типа числа 0-9 для одного юзера для одной статьи ?
Чем отличаются 
$ratingsum; // Сумма всех голосов
и 
$ratingcount; // Сумма всех проголосовавших


--------------------
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! user posted image
PM MAIL WWW Skype   Вверх
alexey664655
Дата 12.8.2019, 17:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 25
Регистрация: 26.5.2012

Репутация: нет
Всего: нет



Надо чтоб рейтинг автора зависел от количества его статей и людей проголосовавших за эти статьи.
Проголосовать может в одной статье человек один раз  - максимальная оценка 5, а минимальная 1 

$ratingsum; - Это сумма всех голосов во всех статьях автора
$ratingcount; - Это сумма всех проголосовавших людей (уникальных) во всех статьях автора


Это сообщение отредактировал(а) alexey664655 - 12.8.2019, 17:22
PM MAIL   Вверх
Vardoulacha
Дата 12.8.2019, 17:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 183
Регистрация: 11.8.2005

Репутация: 7
Всего: 8



Что это делает в разделе про PHP?

Вопрос просто про алгоритмы.

Вы сначала на бумажке словами напишите формулу (т.н. алгоритм), а потом уже программируйте эту формулу на ЯП.

Рейтинг автора = кол.во статей автора * (сумма рейтингов всех статей автора / 100)
PM MAIL   Вверх
ksnk
Дата 12.8.2019, 17:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прохожий
****


Профиль
Группа: Комодератор
Сообщений: 6855
Регистрация: 13.4.2007
Где: СПб

Репутация: 96
Всего: 386



$ratingcount; - Это сумма количество всех проголосовавших людей (уникальных) во всех статьях 
?

а количество проголосовавших за этого автора есть ? Тогда средняя оценка за голос автору и будет рейтингом. а так - не хватает данных. Хотя можно рейтингом считать просто сумму всех оценок автору. При достаточно большой продолжительности опроса - у всех статей будут примерно одинаковое количество оценивающих...




--------------------
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! user posted image
PM MAIL WWW Skype   Вверх
ksnk
Дата 12.8.2019, 18:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прохожий
****


Профиль
Группа: Комодератор
Сообщений: 6855
Регистрация: 13.4.2007
Где: СПб

Репутация: 96
Всего: 386



Vardoulacha, в твоей формуле автор, написавший 9 статей со средним рейтингом 1 будет иметь такой же рейтинг, как и автор, написавший одну статью с рейтингом 9 ?

Это сообщение отредактировал(а) ksnk - 12.8.2019, 18:20


--------------------
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! user posted image
PM MAIL WWW Skype   Вверх
alexey664655
Дата 12.8.2019, 18:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 25
Регистрация: 26.5.2012

Репутация: нет
Всего: нет



Вот и я задумался, как можно наиболее правильно вывести рейтинг автора?

Данные могу вывести только такие:
$ratingsum; - сумма всех голосов во всех статьях автора 
$ratingcount;- количество всех проголосовавших людей (уникальных) во всех статьях автора
$contentsum;  -  количество статей у автора


Это сообщение отредактировал(а) alexey664655 - 12.8.2019, 18:39
PM MAIL   Вверх
ksnk
Дата 12.8.2019, 19:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прохожий
****


Профиль
Группа: Комодератор
Сообщений: 6855
Регистрация: 13.4.2007
Где: СПб

Репутация: 96
Всего: 386



Цитата(alexey664655 @  12.8.2019,  18:35 Найти цитируемый пост)
$ratingsum; - сумма всех голосов во всех статьях автора 
$ratingcount;- количество всех проголосовавших людей (уникальных) во всех статьях автора

Дык, тогда все просто, средняя оценка за голос - $ratingsum/$ratingcount - считай это рейтингом. Тут будет не совсем справедливо для автора, написавшего 100 статей с рейтингом X и 1 статью с тем же рейтингом. Но данных маловато, для более "справедливого" рейтинга. Вообще - рейтинг нужно бы считать как пару чисел - "Рейтинг графомана" - количество статей и "Рейтинг пользы" - среднюю оценку - по делу пишет или фигню какую-то... smile 


--------------------
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! user posted image
PM MAIL WWW Skype   Вверх
alexey664655
Дата 12.8.2019, 19:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 25
Регистрация: 26.5.2012

Репутация: нет
Всего: нет



Других данных просто нет, но надо чтоб была справедливость. Наверно без коэффициента не обойтись.
Например:
$rating= ($ratingsum/$ratingcount)+($contentsum*0.1);
Где 0.1 - понижающий  коэффициент чтоб число было небольшое.

Это сообщение отредактировал(а) alexey664655 - 13.8.2019, 04:02
PM MAIL   Вверх
ksnk
Дата 13.8.2019, 15:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прохожий
****


Профиль
Группа: Комодератор
Сообщений: 6855
Регистрация: 13.4.2007
Где: СПб

Репутация: 96
Всего: 386



Со справедливостью все сильно субьективно. пусть будет примерно так - за большой вклад в библиотеку статей полагается бонус, но не больше половины максимального рейтинга. Рейтинг считается как средняя оценка голоса + количество статей
= ($ratingsum/$ratingcount)+(4*(1-1/(1+$contentsum)))
Тоже не особо справедливо, но вроде получше...

P.S. формулу заменил на более правильную




Это сообщение отредактировал(а) ksnk - 14.8.2019, 00:39


--------------------
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! user posted image
PM MAIL WWW Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.1467 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.