راهنمایی در حل پروژه (حل نشده)
با سلام به همه. همین طوری که تو تصویر مشاهده میکنین یک RatingBar دارم هنگامی که کاربر روی دکمه ی Send کلیک میکنه باید Rate که انتخاب کرده به همراه عدد 1 که یعنی رای داده به دیتابیس ارسال بشه و در نهایت طی عملیاتی تعداد نفرات رای دهنده و ریت میانگین رو روی ریتینگ بار نمایش بده. من این کارو انجام دادم یعنی یک بار ارسال کردم مثلا rate =3 و عدد 1 رو ارسال کردم برای بار دوم که ارسال میکنم rate=3 و عدد 1 ریت با رقم قبلیش جمع میشه و در دیتابیس قرار میگیره ولی برای تعداد نفرات همون عدد1 دوباره آپدیت میشه. این مشکل رو چی جوری حل کنم؟

با سلام
اگر هر رای رو جداگانه ثبت می کنید که نبایستی مشکلی باشه با تقسیم مجموع آرا بر تعداد ارا بایستی انجام بشه . ولی اگر با به روز رسانی این کار رو انجام میدید بایستی هر بار آخرین تعداد رای دهندگان رو بگیرید و یک واحد به اون اضافه کنید و دوباره به روز رسانی کنید .
یکی از مشکلات کار با دیتابیس این هست که فرآیندهای عملیاتی در دیتابیس انجام بشوند یا در برنامه .
پیشنهاد من هم این هست که کار خودتون رو با یک فیلد انجام بدید که میزان رای (برای مثال 1 تا 5) رو ذخیره میکنه و به جای جمع کردن و به روز رسانی از insert استفاده کنید . برای نمایش میانگین Rate کافیه که با دو دستور sum و count از دیتابیس این فیلد رو بخونید و نتیجه رو بر هم تقسیم کنید .
امیدوارم متوجه منظورم شده باشید . به امید موفقیت
پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .




