جار التحديث ...
جار التحديث ...

استفسار متعلق بتحديث متغير في قاعدة البيانات

  • 0

السلام عليكم

انا في بداياتي لانشاء مواقع واواجه مشكلة في شيء ولم اعلم  عن ماذا ابحث بالضبط بحثت عن اشياء مختلفة لكن لم اصل لما اريده،  لذلك سأشرح الفكرة بشكل مبسط اذا كان هناك من سيستطيع افادتي وشكراً مقدماً

الموقع يحتوي نوعان من المستخدمين: مدير ومستخدم عادي

-المستخدم العادي يمكنه التسجيل او المشاركة بمشاريع معروضة في الموقع ويحدد عدد الايام لكل مشروع، في صفحته الشخصية توجد صفحتان لقائمتين وهما: المشاريع الحالية: التي شارك بها مع عدد الايام التي قام باختيارها، وقائمة المشاريع المنجزة: وهيا المشاريع التي انتهت اي كانت حالية ثم انتقلت للمنجزة بعد انتهاء يومها، وبالاسفل مجموع الايام المنجزة ( هنا قمت بحساب الايام لكل المشاريع المنتهية المشترك فيها باستخدام  sql query  ثم يقوم بتحديث متغير "عدد الانجازات" للمستخدم هذا بناء على ماقمت بحسابه)(هناك جدولين في قاعدة البيانات احدهما للمستخدم ومعلوماته والاخر للمشاريع وهناك جدول اخر يشكل العلاقة بين المستخدم والمشاريع المشترك بها)

- اما حساب المدير يحوي قائمة باسماء المستخدمين العاديين وعدد الايام المنجزة لهم (المشكلة هنا:انه عندما اقوم هنا باستدعاء المتغير "عدد الانجازات" لكل مستخدم بالقائمة لايكون محدثاً مالم يقوم المستخدم بدخول حسابه على صفحة القائمة  المنجزة، لانه من هناك يتم تحديث عدد الايام المنجزة .. حاولت هنا حساب الايام الالمنجزة لكل مستخدم لكنه يجعل الصفحة بطيئة جداً لكثرة استدعاء الquery فما الحل اين المفترض ان اضع مثل هذه الquery التي تقوم بتغيير قيم متغيرات مشتركة بين حسابين مختلفين؟؟ )

 

إجابات المستخدمين (4)


  • مسؤول
  • عضو جديد
  • قبل أشهر 8

سلام عليك أخي

يمكنك إستخدام الCron Jobs عشان ينفذ برمجة أنت محددها وهكذا كل مدة من الوقت أنت محددها أيضاً

فمثلا تريد كل يوم أن تمسح كاش الموقع، مش هتعمل أنت هذا كل يوم، بل ستحدد برنامج كل يوم في ميعاد معين يشغل برمجة أنت مجهزها لمسح الكاش

الآن كيف هذا يفيدك؟ يفيدك في إن اليوم في 10 أنجزوا مهماتهم، فأنت هتعمل شرط يتحقق من التاريخ ليضيف إنجازات الأشخاص يومياً حسب التاريخ -فمش هيمشي على كل الأشخاص، لكن هيتعمل على 10 بس وذلك أفضل وأحسن للسرعة- وبهذا يتضافوا مباشرة

يمكنك استخدام هذا الموقع: https://cron-job.org/en/members/ هو يقدم هذه الخدمة بشكل مجاني بالكامل


  • 1
رد على التعليق (0)

الردود :


لا يوجد ردود بعد


سجل الدخول لاضافة رد

ان كنت فهت المشكلة فهي أن المستخم عليه الدخول الى صفحة الانجازات ليتم تحديث الانجازات لديه , لا أجد ان هذه الطريقة مناسبة تماماً بل الأنسب هي تحديث الانجازات تلقائياً عند انتهاء الوقت , يمكنك عمل ذلك عن طريق Cron Job مثلاً لتدخل على صفحة الانجازات مرة يومياً , واعتماداً على التاريخ يتم تحديث الانجازات أو لا , في حال أن اجابتي غير واضحة أو اني اسأت فهم المشكلة ارجو منك الرد على اجابتي وتوضيح المشكلة بشكل أكبر , ممتن لساعدتك :)


  • 1
رد على التعليق (2)

الردود :


  • قبل أشهر 8

<p>نعم هذه مشكلتي، مالمقصود بـ cron job؟ هل يمكنك سرد شرح مبسط له وماعمله حتى اقوم بالبحث عنه</p>

<p>Cron Job هو أشبه بروبوت يقوم بعمل مهمة يومية , اسبوعية , الخ , يمكنك برمجته لعمل مهمة كل 5 دقائق مثلاً&nbsp;</p> <p>&nbsp;</p>


سجل الدخول لاضافة رد
سجل الدخول لاضافة اجابة جديدة