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

الموضوع: [مشكلة] بإنقاص "-" قيمة حصل !.

  1. #1
    عضو فعال
    تاريخ التسجيل
    Aug 2007
    المشاركات
    1,431

    [مشكلة] بإنقاص "-" قيمة حصل !.



    السلام عليكم ورحمة الله وبركاته

    لدي سكربت دروس ... وفيه جدول drs_section جدول الأقسام , ويوجد بهذا الجدول حقل lessons_num عدد الدروس , وعند اضافة الدرس يتم زيادة العدد بـ +1
    كود PHP:
    $le mysql_fetch_array(mysql_query("SELECT `lessons_num` FROM `drs_section` WHERE id='$section'"));
    $lessons_num $le['lessons_num'];
    $sec_update mysql_query("UPDATE `drs_section` SET `lessons_num`=$lessons_num+1 WHERE `id`='$section'");
    if(
    $sec_update) { $msg "تم تحديث عدد الدروس في القسم بنجاح"; } else { $msg "خطأ في تحديث عداد الدروسفي القسم "; } 
    ولكن المشكلة انه عند حذف درس ... كيف انقص القيمه ؟ علماً بأنني استخدم الحدذف الجماعي ...

    وهذا كود الحذف لدي :
    كود PHP:
    $array $_POST['id']; 
    $comma_separated implode(","$array);
    $sql mysql_query("DELETE FROM `drs_text` WHERE id IN ($comma_separated)");
    $sql2 mysql_query("DELETE FROM `drs_comment` WHERE `subject_id` IN ($comma_separated)"); 
    كيف اقوم بحسب عدد الدروس المحدده ثم اقوم بإنقاصها من الحق lessons_num ...,؟

    وشكراً ..,





    التعديل الأخير تم بواسطة ff5006 ; 04-04-2008 الساعة 07:46 PM


  2. #2
    عضو فعال جدا
    تاريخ التسجيل
    Apr 2002
    المشاركات
    2,046


    جرب

    كود PHP:
    $array $_POST['id']; 
    $num count($array);
    $comma_separated implode(","$array);
    $sql mysql_query("DELETE FROM `drs_text` WHERE id IN ($comma_separated)");
    $sql2 mysql_query("DELETE FROM `drs_comment` WHERE `subject_id` IN ($comma_separated)");  

    $sec_update mysql_query("UPDATE `drs_section` SET `lessons_num`=$lessons_num-$num WHERE `id`='$section'");
    if(
    $sec_update) { $msg "تم تحديث عدد الدروس في القسم بنجاح"; } else { $msg "خطأ في تحديث عداد الدروسفي القسم "; } 






    __________________
    مدونتي

  3. #3
    عضو فعال
    تاريخ التسجيل
    Aug 2007
    المشاركات
    1,431


    شكراً لك اخي محمود وجزاك الله خير , للأسف الكود لم يعمل معي , حاولت تعديل لعدة اشكال لكن لاتم انقاص الارقام . . .






  4. #4
    عضو فعال
    تاريخ التسجيل
    Aug 2007
    المشاركات
    1,431


    سأحاول برمجة صفحة إصلاح العدادات , بعد تفكير جاءت الفكرة برأسي ولله الحمد






  5. #5

    استغني عن الحقل lessons_num



    هل تستطيع الاستغناء عن الحقل lessons_num وحساب عدد الدروس بشرط رقم القسم ؟

    بدالة
    php
    كود PHP:
    $sql=mysql_query("select id from `table_name` where cat_id=16");
    $num=mysql_num_rows($sql);
    echo 
    $num
    او من داخل mysql


    كود PHP:
    $sql=mysql_query("select count(id) as num from `table_name` where cat_id=16");
    $num=mysql_fetch_array($sql);
    echo 
    $num['num']; 






    __________________
    عدت
    اقتراحاتكم -> www.elbachiri.com

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


    جرب وإن شاء الله تمام

    الكود الأول :
    كود PHP:
    $sec_update mysql_query("UPDATE `drs_section` SET `lessons_num`=`lessons_num`+1 WHERE `id`='$section'");
    if(
    $sec_update) { $msg "تم تحديث عدد الدروس في القسم بنجاح"; } else { $msg "خطأ في تحديث عداد الدروسفي القسم "; } 
    الكود الثاني
    كود PHP:
    $array $_POST['id']; 
    $numtomin=count($array);
    $comma_separated implode(","$array);
    $sql mysql_query("DELETE FROM `drs_text` WHERE id IN ($comma_separated)");
    $sql2 mysql_query("DELETE FROM `drs_comment` WHERE `subject_id` IN ($comma_separated)");
    $sql_m mysql_query("UPDATE `drs_section` SET `lessons_num`=`lessons_num` - '$numtomin' WHERE `id`='$section'"); 






    التعديل الأخير تم بواسطة Alsharaan ; 05-04-2008 الساعة 04:37 AM

  7. #7
    عضو فعال
    تاريخ التسجيل
    Aug 2007
    المشاركات
    1,431


    استغني عن الحقل lessons_num

    السلام عليك , اخوي عبدالواحد ...
    المشكله انه بالداله MySQL_num_rows();
    انه اذا كانت داخل
    كود PHP:
    while($rows mysql_fetch_array($sql)){ } 

    اذا كانت داخل حلقة تكرار , تقوم بإخراج آخر قيمة فقط , , فمثلاً
    كود PHP:
    $query mysql_query("SELECT * FROM `drs_section` ORDER BY `level` DESC");
    while(
    $rows mysql_fetch_array($query){
    $data[] = $rows;
    $id $rows['id'];
    $sql mysql_num_rows(mysql_query("SELECT * FROM `drs_text` WHERE `section_id`='$id'"));
    }
    //
     
    هنا سيتم اظهار عدد الدروس لآخر قسم داخل حلقة التكرار وستصبح جميع الأقسام نفس الرقم ;) 
    كود PHP:
    [color=black][/color

    الأخ Alsharaan
    جزاك الله خير على ردك , من الواضح عند قرائتي للكود انه ينقص عدد الدروس lessons_num - عدد الارقام الموجودة بالمصفوفة
    لكن المشكله اني استخدم الحذف الجماعي .
    وشكراً لك...





    التعديل الأخير تم بواسطة ff5006 ; 05-04-2008 الساعة 12:50 PM

  8. #8
    عضو جديد
    تاريخ التسجيل
    Jun 2007
    المشاركات
    17


    جرب استخدام عبارة SQL التالية :

    كود PHP:
    SELECT 
      
    `drs_section `.`id`,
      `
    drs_section `.`name`,
      (
    select count(*) from drs_text where drs_text.idcat=drs_section.id )`no_droos`
    FROM
      
    `drs_section







  9. #9
    عضو فعال
    تاريخ التسجيل
    Aug 2007
    المشاركات
    1,431

  10. #10
    عضو شرف
    تاريخ التسجيل
    Apr 2002
    المشاركات
    1,379


    - ارجو الانتباه الى الخطأ الأمني الشائع لدى الأغلبية وهو عدم التحقق من المدخلات (قاعدة: لا تثق في المستخدم)
    كود PHP:
    $comma_separated mysql_escape_string(implode(","$array)); 
    - في هذه الحاله يمكن معرفة عدد الصفوف التى تم التأثير عليها باستخدام mysql_affected_rows وتشمل عمليات INSERT, UPDATE, REPLACE , DELETE
    PHP: mysql_affected_rows - Manual





    __________________
    ضيف الله العتيبي مبرمج حر و مهندس معتمد من زيند (ZCE)
    الاتصال: daif@daif.net او جوال: 0556639884
    الخدمات: تقديم استشارات برمجيه, تطوير بوابات/خدمات إلكترونيه للقطاع العام او الخاص .

  11. #11
    عضو فعال
    تاريخ التسجيل
    Aug 2007
    المشاركات
    1,431


    السلام عليكم
    اخوي ضيف ... جزاك الله خير على التنبيه تم التعديل...
    وشكراً للجميع على المشاركه ... وتم حل المشكله بـ عمل صفحة لتحديث العدادات !.











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

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

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