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

الموضوع: ساعدوني في برمجة تعدد الصفحات

  1. #1
    فضلاً اكتب اسمك الحقيقي هنا
    زائرداعية

    ساعدوني في برمجة تعدد الصفحات



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

    كتبت هذا الكود البسيط لأوضح الأمر :

    كود PHP:
    <?php
        
    include('config.php');
        
          
    $SQL MySQL_Query('SELECT * FROM table ORDER BY id ASC');
            while(
    $Result MySQL_Fetch_Object($SQL))
               {
                 
    $id $Result->id;
                 
    $name $Result->name;
                 
    $pass $Result->pass;
                 
    $email $Result->email;
                 
    $phone $Result->phone;
                 
                  echo 
    'Id :'.$id.'<br />';
                  echo 
    'Name :'.$name.'<br />';
                  echo 
    'Pass :'.$pass.'<br />';
                  echo 
    'Email :'.$email.'<br />';
                  echo 
    'Phone :'.$phone.'<p>';
                 
               }
               
    MySQL_Free_Result($SQL);
    ?>

    الكود سيعرض لي بيانات جميع الأعضاء المسجلين في الموقع !

    أريد أن أقسم عدد النتائج إلى صفحات بحيث أعرض 5 نتائج فقط في الصفحة الواحدة
    أي أحتاج لبرمجة تعدد الصفحات


    ما أضيف على الكود مع الشرح لو تكرمتم ، الأهم لي هو أن أفهم كيف أبرمج الكود !!

    بارك الله فيكم وشكرا على المساعدة .







  2. #2
    عضو فعال جدا
    تاريخ التسجيل
    Dec 2004
    المشاركات
    4,037


    أهم شيء "الأهم لي هو أن أفهم كيف أبرمج الكود !!" 100% وإن شاء الله ستكون رائعا ..

    سيكون لدينا متغيران جديدان .. "منين" $mneen و"كام" $kam .. "منين" سيحدد لنا المفروض نظهر النتائج بحيث تبدأ من أي صف .. أما "كام" فيحدد عدد النتائج المطلوبة لكل صفحة ..

    قبل كود فتح قواعد البيانات نشوف هل المتغير "منين" تم إرسال من الصفحة السابقة أم لا ..
    كود PHP:
    if(isset($_GET['mneen'])) $mneen = (int) $_GET['mneen'];
    else 
    $mneen 0
    إذن لو تم إرسال قيمة "منين" نحفظها .. وإلا نخلي القيمة صفر أي سنعرض النتائج من أولها ..
    بعد ذلك ممكن نحدد قيمة "كام" ..
    كود PHP:
    $kam 5
    بعد أن نفتح قواعد البيانات بجملة SELECT في الكود لا نظهر النتائج مباشرة .. وإنما نشوف عدد النتائج أساسا .. يبقى بعد جملة السيليكت الخاصة بك وقبل الوايل:
    كود PHP:
    $eltotal mysql_num_rows($SQL); 
    وضعنا عدد النتائج كلها الموجودة في متغير اسمه "التوتال" .. ممكن دلوقتي نشوف هل النتائج صفر أساسا واللا نكمل .. بعد كده نكرر جملة السيليكت مع إضافة صغيرة:
    كود PHP:
    $SQL MySQL_Query('SELECT * FROM table ORDER BY id ASC LIMIT $mneen, $kam'); 
    يعني اضفنا عامل الليميت للجملة .. مما يؤدي إلى أن تكون النتيجة مناسبة لما نريده ("منين" والعدد "كام") .. نكمل عادي وكله ح يظهر تمام إن شاء الله ..

    الجزء التاني .. عايزين نشوف هل سنعرض صفحات أخرى واللا لا .. خلينا في "التالي" عشان "السابق" أسهل .. عشان نعمل رابط "التالي" ممكن نعمل كده:
    كود PHP:
    if($eltotal $mneen $kam){
    $tali $mneen $kam;
    echo 
    "<a href=?mneen="$tali ">التالي</a>";

    جرب ونشوف تمام واللا فيه تعديلات





    __________________
    ....
    محمد حسام
    انترنت بلس

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


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






  4. #4
    عضو فعال جدا
    تاريخ التسجيل
    Feb 2004
    المشاركات
    2,307


    نعم والاخ انترنت بلس ما قصر ..

    وهنا ايضا http://www.phpfaq.php-ar.com/index.p...d=1&page=serch

    تحياتي





    __________________
    بي اتش بي العرب : php-ar.com
    دروس PHP خاص : phpfaq.php-ar.com

    new site : www.naifphp.net/web

  5. #5


    الأخ إنترنت بلس ماقصر

    بس نصيحتي إستخدم تعدد الصفحات من برمجة رفيع العتيبي تلقاه مثبت في هالقسم .. وشاهد المثال التفصيلي اللى وضعه رفيع في موقع البوابة العربية عن تعدد الصفحات ... سهل وواااضح





    __________________
    فنون لخدمات التصميم والإستضافة

    |||||||||||||||||||||||||||||||||||||||||

    SUPPORT @ FONONHOST.COM
    DESIGN @ FONONHOST.COM

    3arabhost.net للبيع


  6. #6
    فضلاً اكتب اسمك الحقيقي هنا
    زائرداعية


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

    أخي أنترنت بلس
    بارك الله فيك وحفظك

    اضفت الأكواد والحمد لله فهمتها
    النتيجة ممتازة بالفعل
    جربت الكود وعمل بنجاح


    كود PHP:
    <HTML>
    <HEAD>
    <TITLE> سكريبت تعدد الصفحات </TITLE>
    </HEAD>

    <BODY>
    <?php

    //
    //   New Script :
    //

    require('config.php');
      if(isset(
    $_GET['i'])) $i = (int) $_GET['i'];
      else 
    $i 0;
      
    $Num 3;

          
    $SQL MySQL_Query('SELECT *
                              FROM php
                              ORDER BY id ASC'
    )
                 Or Die(
    MySQL_Error());
                 
          
    $Total MySQL_Num_Rows($SQL);
          
    $SQL MySQL_Query("SELECT *
                              FROM php
                              ORDER BY id ASC
                              LIMIT 
    $i,$Num ");
                              
            while(
    $Result MySQL_Fetch_Object($SQL))
               {
                 
    $id $Result->id;
                 
    $name $Result->name;
                 
    $pass $Result->pass;
                 
    $email $Result->email;
                 
    $phone $Result->phone;

                  echo 
    'Id :'.$id.'<br />';
                  echo 
    'Name :'.$name.'<br />';
                  echo 
    'Pass :'.$pass.'<br />';
                  echo 
    'Email :'.$email.'<br />';
                  echo 
    'Phone :'.$phone.'<p>';

               }
               
    MySQL_Free_Result($SQL);
               
               if(
    $Total $i $Num)
                 {
               
    $Last $i $Num;
               echo 
    "<a href=?i="$Last ">التالي</a>";
                 }
    ?>

    </BODY>
    </HTML>
    كيف أنجز السابق الان ؟
    هل أطبق نفس الفكرة ؟


    أيضا هل يمكن إضافة الأرقام
    مثلا :
    كود:
    1 | 2 | 3 ...التالي
    وبارك الله فيك
    شكرا جزيلا






  7. #7
    فضلاً اكتب اسمك الحقيقي هنا
    زائرداعية


    المهمة9
    جريح
    فنون هوست


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

    شكرا لكم






  8. #8
    عضو فعال جدا
    تاريخ التسجيل
    Dec 2004
    المشاركات
    4,037


    الحمد لله انه اشتغل ..
    مادمنا بنتعلم يا اخي داعية يبقى نعمل التظبيطات الصغيرة اللي تخلي البرنامج مافيهوش عيوب برمجية .. ونكمل خطوة خطوة ..

    1- اعمل جملة if احترازية قبل السيليكت التانية .. عشان يمكن السيليكت الأولى تعطي نتائج فارغة لأي سبب ..

    2- قبل قسم الكود بتاع التالي نعمل قسم الكود بتاع السابق . ايه الشرط اللي لو توافر يبقى نظهر رابط السابق؟ انه يكون في صفحة غير الصفحة الأولى .. ايه المميز في الصفحة الأولى؟ ان قيمة "منين" = 0 .. يعني لو "منين" أكبر من صفر يظهر له السابق .. جرب





    __________________
    ....
    محمد حسام
    انترنت بلس

  9. #9
    عضو فعال
    تاريخ التسجيل
    Feb 2002
    المشاركات
    1,247


    إنترنت بلس


    كلمة حق : والله إنك أمييييييييييييييير جعلك ياشيخ للجنة ومتعك بالصحة والعافية وصرفك عن كل سوء .

    نحن بخير مادام فينا أمثالك ياطيب الأصل





    __________________
    ومامن كاتب إلا سيفنى ****** ويبقي الدهر ماكتبت يداه
    فلا تكتب بكفك غير شيء ****** يسرك يوم القيامة أن تراه

  10. #10
    عضو فعال جدا
    تاريخ التسجيل
    Dec 2004
    المشاركات
    4,037


    الله يبارك لك ويبارك في عمرك يا طيب يارب يديم المودة والأخوة بيننا جميعا ..





    __________________
    ....
    محمد حسام
    انترنت بلس

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


    بارك الله فيك وفي الاخوة يانترنت بلس





    __________________
    k_l_l_o_ll @ hotmail.com
    فن التصميم

  12. #12
    عضو نشيط جدا
    تاريخ التسجيل
    Jul 2003
    المشاركات
    333


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

    1- اعمل جملة if احترازية قبل السيليكت التانية .. عشان يمكن السيليكت الأولى تعطي نتائج فارغة لأي سبب ..

    2- قبل قسم الكود بتاع التالي نعمل قسم الكود بتاع السابق . ايه الشرط اللي لو توافر يبقى نظهر رابط السابق؟ انه يكون في صفحة غير الصفحة الأولى .. ايه المميز في الصفحة الأولى؟ ان قيمة "منين" = 0 .. يعني لو "منين" أكبر من صفر يظهر له السابق .. جرب
    شكرا لك أخي انترنت بلس

    بس حبيت اقول فكرة ثانية : بتفيد ماتضر

    انه لو منين أكبر من أو يساوي كام ،
    يبقى قيمة السابق = كام - منين

    كود PHP:
    if( $kam <= $mneen ){
                   
    $sapeq $mneen $kam
    echo "<a href=?mneen="$sapeq ">السابق</a>"







    __________________
    إن الله لا يغير مابقوم حتى يغيروا ما بأنفسهم

  13. #13
    عضو فعال جدا
    تاريخ التسجيل
    Dec 2004
    المشاركات
    4,037


    شكرا لك أخي about_ar
    وإن كنت أستخدم شرطا آخر للسابق وهو:
    إذا كان منين أكبر من صفر ..
    لكن شرطك حلو





    __________________
    ....
    محمد حسام
    انترنت بلس

  14. #14
    عضو نشيط جدا
    تاريخ التسجيل
    Feb 2003
    المشاركات
    342


    الأخ انترنت بلس او المهمة9 ولايهون بقية الأخوة

    ساعدوني أفادكم الله في جعل هذا السكريبت يقبل تعدد الصفحات في عرض المقالات

    http://www.swalif.net/softs/showthread.php?t=98053

    الرجاء المساعدة مليت من تكرار الطلب





    __________________
    إستخدم ملفك الخاص لكتابة توقيعك

  15. #15
    عضو نشيط جدا
    تاريخ التسجيل
    Feb 2003
    المشاركات
    342


    الوو





    __________________
    إستخدم ملفك الخاص لكتابة توقيعك





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

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

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