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

الموضوع: تعديل جماعي ...

  1. #1
    عضو فعال
    تاريخ التسجيل
    May 2004
    المشاركات
    1,591

    تعديل جماعي ...



    السلا عليكم ورحمة الله وبركاته .
    اخواني الحين جالس اساوي سكريبت ولكن في مشكلة واجهتني .
    وهي انه تعديل الأقسام بشكل جماعي .
    عملت صفحة يظهر فيها الاقسام ومسميات الحقول وكل شيء تمام .
    يوم ما يروح للصفحة اللي فيها Query التحديث يحدث بس الأخير اذا اتعدل ...
    ما ادري ايش هي فكرتها بحيث تتعمل تحديث جماعي ...؟

    تقبلو تحياتي .





    __________________
    دروس php بالفيديو !

    marabe7 سابقاً .

    حسَّن موقعك في محركات البحث :
    أكاديمية التطوير


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


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

    الحل هو
    لنفرض انك تريد تعديل اسماء الاقسام
    اول شي تعرضهم كلهم مع form و وحقول نصيه للتعديل
    الفورم يكون لجميع الاقسام يعني تفتح وسم الform قبل التكرار الذي يستخرج الاقسام وتغلقه بعده.
    المهم المتغيرات تكون بشكل مصفوفه..

    وتعالجها هناك!

    هكذا:
    كود:
    <input type="text" name="change[id]" value=blah">
    يعني المتغير يكون change بشكل مصفوفهوعناصرها هي ارقام ال id
    وهناك تعمل تكرار يستخرج جميع الحقول وعند كل حقل يفحص.. هل موجود change[id] الخاص به ؟ ؟ اذا غيره بقيمته وهكذا

    طبعا ال id الي داخل [] يجب ان تحمل الاشاره $ لانها متغير!!

    الفكره وصلتك ؟






  3. #3
    عضو فعال
    تاريخ التسجيل
    May 2004
    المشاركات
    1,591


    اخوي ابو الويس الله يعطيك العافية دائماً سباق لمساعدتنـا بارك الله فيك ...
    وصلت الفكرة وان شاء الله بطبقها اليوم وباذن الله تضبط ...
    اذا ما ضبطت حتعبك معاي واحط الكود اللي عملته هنا تساعدني فيه اذا ما فيها ازعاج ...
    شكراً لك وتقبل تحياتي .






    __________________
    دروس php بالفيديو !

    marabe7 سابقاً .

    حسَّن موقعك في محركات البحث :
    أكاديمية التطوير

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


    ان شاء الله عزيزي مش مشكله






  5. #5
    عضو فعال
    تاريخ التسجيل
    May 2004
    المشاركات
    1,591


    السلام عليكم .
    اخوي ابو الويس والله اني خبصت الدنيا وما ضبطت

    تفضل اخوي هذه صفحة التعديل وهي شغاله يظهر فيها التصنيفات كلها في حقول .

    كود PHP:


    <?php
    require("ses.php") ;
    require(
    "config.php") ;
    include(
    "adminheader.php") ;
    $sql mysql_query("select * from cat ") ; 
    $sq2 mysql_query("select * from sites") ; 

    if (
    mysql_num_rows($sql) == ){
    echo 
    "<font color='red'>لا يوجد اي تصنيف لكي تقوم بتعديله  !!!</font>" ;
    exit ;
    }

    echo 
    "التصنيفات   : (  إذا أخترت إظهار التصنيف ((  لا )) فلن يظهر للزوار  )  <br>" ;
        





        while (
    $res mysql_fetch_array($sql)) {
        
    $catid $res['catid'] ;
        
    $catgiven $res['catname'];
        
    $catdesc $res['catdesc'] ;
        
    $catactive $res['catactive'] ;
        echo 
    "<form action ='doedit.php' method='get'>" ;
        echo 
    "<input type='text' name='change[$catid]' size= '1' value='$catid'>&nbsp;&nbsp; إسم التصنيف : <input type='text' value='$catgiven' name= 'change[$catgiven]'>"."&nbsp;&nbsp;"."وصف التصنيف : <input type='text' value='$catdesc' name='catdesc' >"."  إظهار التصنيف : <select name='catactive'><option>نعم</option><option>لا</option></select>"."<br>" ;

            }

        echo 
    "<input type='submit' value=' نفذ التعديلات  '></form></center>" ;
            
    ?>

    وهذه صفحة التنفيذ اللي كلها شكلها غلط :

    كود PHP:


    <?php

    require("ses.php") ;
    require(
    "config.php") ;
    include(
    "adminheader.php") ;


    $SQlC mysql_query("select * from cat ") ;

    while( 
    mysql_fetch_array($SQLC) ) {


    mysql_query("UPDATE `cat` SET `catname` = 'change[$catgiven]' WHERE `catid` = 'change[$catid]'") ;


    }



    ?>
    اتمنى مساعدتك فيها لاني والله طفشت منها ...
    تقبل تحياتي .





    __________________
    دروس php بالفيديو !

    marabe7 سابقاً .

    حسَّن موقعك في محركات البحث :
    أكاديمية التطوير

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


    عزيزي في خطأ انت وثعت به وهو في الكود الاول يعني كود التعديل.. وهو انك فتحت وسم ال form بعد التكرار.. وهكذا سينتج لك عدة وسوم form بعدد النتائج

    افتح وسم ال form قبل التكرار فقط انقل السطر <form قبل ال while .. لتكون النتيجه انه يفتح form مره واحده ..
    وبعدها انت فعلت الشئ الصحيح بانك بانك وضعت زر ال submit واغلاق الوسم بعد اغلاق التكرار..

    ال inputs يجب ان تكون كلها مصفوفات .. انت وضعت فقط اول 2 ..

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






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


    عزيزي خد هذا الكود كتبته عندي وجربته على سكربت موجود عندي

    يعمل تغيير جماعي لجدول به حقلين اقرأه وافهمه وطبقه!!

    اول صفحه هي 1.php لاظهار العنوان والوصف لكل قسم

    كود:
    <?php
    include "config.php";
    
    connectdb();
    $q=mysql_query("select * from category");
    
     print "<form method=\"post\" action=\"2.php\">";
     while($res=mysql_fetch_assoc($q))
       {
    
         $catname1=$res['name'];
         $catid1=$res['id'];
         $catdetails1=$res['details'];
         print "<input type=\"text\" name='catname2[$catid1]' value=\"$catname1\">$catid1<br>";
         print "<input type=\"text\" name='catdetails2[$catid1]' value=\"$catdetails1\"><hr>";
    
    }
    print "<input type=\"submit\" value=\"submit\"></form>";
    
    ?>
    كما ترى عملت اتصال بقاعدة البيانات في البدايه وهي داله كنت قد انشاتها في ملف config لهذا السبب عملت له include ..
    بعدين افتح وسم الفورم .. وبعدها التكرار بجيث لكل قسم يضع حقل السم والوصف والمتغير عباره عن مصفوفه الاندكس بتاعها هو الاي دي للقسم! وبعد التكرار اضع زر الارسال وبعدها اغلق الوسم

    الان صفحة التعديل:

    كود:
    <?php
    include "config.php";
    
    
    connectdb();
    $q=mysql_query("select * from category");
     while($res=mysql_fetch_assoc($q)) {
      $catid=$res[id];
    
     $qq="update category set name='$catname2[$catid]',details='$catdetails2[$catid]' where id='$catid' limit 1";
     $rr=mysql_query($qq);
    
    
     }
     
    ?>
    يتم الاتصال بقاعدة البيانات وعمل تكرار لاستخراج جميع البيانات..
    ثم نعدل كل نتيجه (يعني كل قسم) داخل التكرار بنفس القيمه التي ارسلت وهو اسم المصفوفه ورقم الاي بي
    الكود سليم وشغال 100% .. ملاحظه حتى لو لم تغير في قسم معين فانه سيعدل بنفس القيمه مش مشكله!!

    اقرأ الكود وافهمه وحاول التطبيق!
    تحياتي






  8. #8
    عضو فعال
    تاريخ التسجيل
    May 2004
    المشاركات
    1,591


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

    ما ادري السبب ..؟

    تحياتي .





    __________________
    دروس php بالفيديو !

    marabe7 سابقاً .

    حسَّن موقعك في محركات البحث :
    أكاديمية التطوير

  9. #9
    عضو فعال
    تاريخ التسجيل
    May 2004
    المشاركات
    1,591


    هذا الملف حق التعديل :

    كود PHP:

    <?php
    require("ses.php") ;
    require(
    "config.php") ;
    include(
    "adminheader.php") ;
    $sql mysql_query("select * from cat ") ; 
    $sq2 mysql_query("select * from sites") ; 

    if (
    mysql_num_rows($sql) == ){
    echo 
    "<font color='red'>لا يوجد اي تصنيف لكي تقوم بتعديله  !!!</font>" ;
    exit ;
    }

    echo 
    "التصنيفات   : (  إذا أخترت إظهار التصنيف ((  لا )) فلن يظهر للزوار  )  <br>" ;
        




        echo 
    "<form action ='doedit.php' method='post'>" ;


        while (
    $res mysql_fetch_array($sql)) {
        
    $catid $res['catid'] ;
        
    $catname $res['catname'];
        
    $catdesc $res['catdesc'] ;
        
    $catactive $res['catactive'] ;
        echo 
    "<input type='text' name='change[$catid]' size= '1' value='$catid'>&nbsp;&nbsp; إسم التصنيف : <input type='text' value='$catname' name= 'change[$catname]'><br>" ;

            }

        echo 
    "<input type='submit' value=' نفذ التعديلات  '></form></center>" ;
            
    ?>
    وهذا حق تنفيذ التعديل :

    كود PHP:

    <?php

    require("ses.php") ;
    require(
    "config.php") ;
    include(
    "adminheader.php") ;


    $SQLC mysql_query("select * from cat ") ;

    while(
    $res mysql_fetch_array($SQLC) ) {
    $catid=$res['catid'];

    mysql_query("UPDATE `cat` SET `catname` = '$change[$catname]' WHERE `catid` = '$catid' limit 1") ;


    }



    ?>
    تحياتي .





    __________________
    دروس php بالفيديو !

    marabe7 سابقاً .

    حسَّن موقعك في محركات البحث :
    أكاديمية التطوير

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


    بصراحة لم انظر كثيراً الى المضوع ولا الى الاكواد لاني مستعجل بعض الشيء لكن احببت ان اقدم ما لدي ، تفضل الكود الخاص باعتماد التعديل :

    كود PHP:
    <?php 

    require("ses.php") ; 
    require(
    "config.php") ; 
    include(
    "adminheader.php") ; 


    $SQLC mysql_query("select * from cat ") ; 

    while(
    $res mysql_fetch_array($SQLC) ) { 
    $catid=$res['catid']; 

    mysql_query("UPDATE `cat` SET `catname` = '"$_POST['change'][$catid] ."' WHERE `catid` = '$catid' limit 1") ; 






    ?>







  11. #11
    عضو فعال
    تاريخ التسجيل
    May 2004
    المشاركات
    1,591


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





    __________________
    دروس php بالفيديو !

    marabe7 سابقاً .

    حسَّن موقعك في محركات البحث :
    أكاديمية التطوير

  12. #12
    عضو فعال
    تاريخ التسجيل
    May 2004
    المشاركات
    1,591


    مشكوررين اخواني ابو الويس والحق يعلو الحمدلله المشكلة تحلت وتمام التمام الحين ...

    تحياتي .





    __________________
    دروس php بالفيديو !

    marabe7 سابقاً .

    حسَّن موقعك في محركات البحث :
    أكاديمية التطوير





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

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

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