انجمن سایت کلیدستان


رتبه موضوع:
  • 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
انجام محاسبات برای سیستم ستاره دهی

انجام محاسبات برای سیستم ستاره دهی

#1
سلام
وقت بخیر
من نیاز دارم یه سیستم ستاره دهی با ماکزیمم 5 ستاره راه اندازی کنم. برای این منظور دو تا ستون ساختم برای هر مطلب. یکی تعداد ارا داده شده و یکی میانگین ستاره های داده شده.
امتیاز جدید گرفته شده از کاربر رو میفرستم به وب سرویس و اونجا کدهای زیر رو اجرا می کنم برای محاسبات :

$valuerate رای جدید داده شده توسط اخرین کاربر هست،

 $afzodan = mysql_query("UPDATE $table SET nrate = nrate +1 WHERE id = $id");

با دستور بالا میام به تعداد نفراتی که رای دادن یکی اضافه می کنم

    $nrate = mysql_query("SELECT nrate FROM $table WHERE id = $id");
با دستور بالا تعداد نفراتی که رای دادن رو میگیرم

    $rate = mysql_query("SELECT rate FROM $table WHERE id = $id");
با دستور بالا میانگین امتیازات رو میگیرم

    $newrate = (($nrate * $rate) + $valuerate ) / ($nrate);

با دستور بالا میانگین جدید رو با اعمال رای جدید محاسبه می کنم

    $afzodanrate = mysql_query("UPDATE $table SET rate = $newrate WHERE id = $id");

با دستور بالا میانگین جدید رو وارد دیتابیس می کنم
    $result = mysql_query("SELECT * FROM $table WHERE id = $id");

و با دستور بالا همه چیز رو از دیتابیس انتخاب می کنم .
مشکلی که هست در محاسبه میانگین جدید هست که همیشه اشتباه حساب می کنه و البته فقط در مرتبه اول هست که میانگین امتیازات تغییر میکنه و در بقیه موارد میانگین تغییری نمیکنه فقط به تعداد نفرات یکی اضافه میشه

مشکل کد های من کجاست؟

 
پاسخ


پیام‌های این موضوع
انجام محاسبات برای سیستم ستاره دهی - توسط parniaznet - ۱۳۹۴/۰۱/۲۱, ۱۰:۰۰ ب.ظ
RE: انجام محاسبات برای سیستم ستاره دهی - توسط admin - ۱۳۹۴/۰۱/۲۲, ۱۱:۴۲ ب.ظ

پرش به انجمن:


کاربران در حال بازدید این موضوع: 1 مهمان