النتائج 1 إلى 8 من 8

الموضوع: هل من حلٍ لمشكلة المهام المجدولة في ال php

  1. #1
    عضو سوبر نشيط
    تاريخ التسجيل
    May 2007
    المشاركات
    947

    هل من حلٍ لمشكلة المهام المجدولة في ال php



    السلام عليكم ورحمة الله وبركاته
    في هذا الموضوع اعرض مشكلة تواجه اغلب المبرمجين
    حيث في بعض الاوامر تريد عملها تلقائياً كحذف موضوع او انشاء حقل بقاعدة البيانات او اضافة نص معين او ....... الخ
    بحيث يكون هذا الحدث مرتبط بوقت او تاريخ محدد تحدده انت فى قاعدة البيانات او مرتبط بحدث آخر بعد حدوثه.
    مثال:
    لو اريد فى تاريخ 12-12-2008 اضافة مقال معين تلقائياً في هذا التاريخ واعطيت الاوامر لذلك فى صفحة ال index
    وتاريخ اليوم مازال 14-7-2008 فهل من المعقول ان في كل زيارة للموقع يتم الاستعلام من قاعدة البيانات عن ذلك ومطابقة تاريخ اليوم بالتاريخ المحدد لكتابة المقال !!
    مثلا لو لديك 10000 زائر للموقع يومياً سيتم تطبيق هذا الاستعلام 10000 مرة يوميا بلا اى فائدة

    هذا كمثال فقط وقِس على ذلك الكثير الكثير من المهام والاوامر
    فهل من شىء ينظم ذلك؟ وهل من الممكن جعل السيرفر يعمل شىء ما تلقائياً من دون ان نرهق قواعد البيانات بالاستعلامات كل وقت؟

    يعني بالمختصر اريد تنفيذ هذا الاستعلام يوم 12-12-2008 فقط بدون ان يُنفَّذ فى كل مرة
    فما الحل؟
    او ما اقرب شىء للصواب؟

    ملاحظة:: هناك خاصية تدعى cron لكنها للاسف تحدد وقت محدد فقط لتشغيل ملف معين
    لكني اريد ربط التشغيل بحدث آخر سيحدث وعمل شرط مثلا وادخال المزيد من البرمجة عليها
    لذلك لا اريد هذه الخاصية





    التعديل الأخير تم بواسطة مهندس مصرى ; 14-07-2008 الساعة 06:27 PM
    __________________
    قل اللهم مالك المُلك تؤتي الملك من تشاء وتنزع الملك ممن تشاء وتعز من تشاء وتذل من تشاء بيدك الخير انك على كل شىء قدير


  2. #2
    عضو نشيط
    تاريخ التسجيل
    Sep 2006
    المشاركات
    267


    ضع ملف الphp في الكرون جوبس بحيث مثلا انه يتنفذ كل يوم

    والملف بتاع ال php دا هيكون فيه شرط اذا التاريخ بيساوي اليوم الي انت عايزه ينفذ الامر





    __________________
    اللهم أكْرِمنا ولاتُهِنا

  3. #3
    عضو سوبر نشيط
    تاريخ التسجيل
    May 2007
    المشاركات
    947


    شكراً لك أخي الكريم
    لكن كيف اربط تشغيل هذه الخاصية فى ال cron بحدث آخر؟؟
    يعني المقصد انا اريد ادخالها بالبرمجة في الشرط if و غيره واضع شروط عند حدوث استعلام ما يشغل هذه الخاصية





    __________________
    قل اللهم مالك المُلك تؤتي الملك من تشاء وتنزع الملك ممن تشاء وتعز من تشاء وتذل من تشاء بيدك الخير انك على كل شىء قدير

  4. #4
    عضو نشيط جدا
    تاريخ التسجيل
    Sep 2006
    المشاركات
    599


    علي حد فهمي للسؤال
    اجابة pico
    هي المطلوبة
    فضع كل شروطك واجرآئتك بملف البي اتش بي
    والكورن جوب كل عملها تشغيل الملف في الوقت المحدد
    وملف البي اتش بي هيقوم بعمل المقارنات والشروط اللي انت عايزها





    __________________
    MrKindy

  5. #5
    عضو نشيط
    تاريخ التسجيل
    Sep 2006
    المشاركات
    267


    هنفرض مثلا ان انت عملت ملف php

    وكان فيه شرط ان يوم مثلا 27-7-2008 يبعت ميل

    هيكون كالتالي
    كود PHP:

    $next 
    mktime(0007272008);
    if(
    date("Y-m-d") == date("Y-m-d"$next) )
      {
        
    mail('admin@google.com','Thank you','Thanks for your service');
      } 
    وبالتالي كل الشروط هتكون شبيهه بيه

    للعلم لم اجرب الكود بس اعتقد ان دي افضل طريقه لمقارنة تاريخين لو في حد عنده حاجه افضل ياريت يبلغنا بيها

    طبعا هتروح الكرون جوبس بتاعتك وتضيف امر التنفيذ اليومي

    كود:
    0 6 * * * php /home/google/public_html/cron.php
    ودا هيتنفذ كل يوم الساعه 6 صباحا ان شاء الله

    يارب اكون قدرت اوصلك اللى انت محتاجه واى استفسار ان شاء الله كلنا مش هنتاخر عنك بالى نعرفه





    __________________
    اللهم أكْرِمنا ولاتُهِنا

  6. #6
    عضو سوبر نشيط
    تاريخ التسجيل
    May 2007
    المشاركات
    947


    جزاكما الله خيرا pico , mr.kindy
    جيد ما ذكرته اخي pico
    الآن اريد ربط توقيت تشغيل الملف بهذا الاستعلام بالضبط وليس كل يوم الساعة 6 صباحاً

    يعني لما يكون :

    كود PHP:
    if(date("Y-m-d") == date("Y-m-d"$next) ) 
    فقط في هذه الحالة يتم تشغيل الملف
    مع العلم ان $next ممكن ان يكون متغير وليس له قيمة ثابتة
    المقصد هنا ادخاله بطريقة ديناميكية وليس يدوياً
    يعني الاعتماد على متغير مثل $next في المثال السابق وربطه بتشغيل الملف





    __________________
    قل اللهم مالك المُلك تؤتي الملك من تشاء وتنزع الملك ممن تشاء وتعز من تشاء وتذل من تشاء بيدك الخير انك على كل شىء قدير

  7. #7
    عضو نشيط
    تاريخ التسجيل
    Sep 2006
    المشاركات
    267


    الكرون جوبس حسب معرفتي لا يمكن تعديل عليه بالphp

    لكن في حل تاني وهو انك تخلي الكرون جوبس تشتغل كل ساعه


    كود:
    0 * * * * php /home/google/public_html/cron.php
    كدا هيشتغل كل ساعه

    وتقدر تعدل في الشرط بتاعك انه ينفذ الامر مثلا في الساعه كذا يوم كذا حسب التاريخ الي انت مدخله في المتغير $next والي ممكن تسحب قيمة المتغير next من قاعدة البيانات علشان تكون سهله عليك في تعديل الوقت





    __________________
    اللهم أكْرِمنا ولاتُهِنا

  8. #8
    عضو سوبر نشيط
    تاريخ التسجيل
    May 2007
    المشاركات
    947


    جزاك الله خيرا
    وبارك الله فيك





    __________________
    قل اللهم مالك المُلك تؤتي الملك من تشاء وتنزع الملك ممن تشاء وتعز من تشاء وتذل من تشاء بيدك الخير انك على كل شىء قدير





ضوابط المشاركة

  • لا تستطيع إضافة مواضيع جديدة
  • لا تستطيع الرد على المواضيع
  • لا تستطيع إرفاق ملفات
  • لا تستطيع تعديل مشاركاتك
  •  

أضف موقعك هنا| اخبار السيارات | حراج | شقق للايجار في الكويت | بيوت للبيع في الكويت | دليل الكويت العقاري | مقروء | شركة كشف تسربات المياه | شركة عزل اسطح بالرياض | عزل فوم بالرياض| عزل اسطح بالرياض | كشف تسربات المياة بالرياض | شركة عزل اسطح بالرياض