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

الموضوع: [php] تعدد الصفحات بدون قواعد البيانات، هل من منجي!

  1. #1
    عضو سوبر نشيط
    تاريخ التسجيل
    Mar 2002
    المشاركات
    889

    Question [php] تعدد الصفحات بدون قواعد البيانات، هل من منجي!



    السلام عليكم
    اخواني الأعزاء

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

    عندنا قسم لمقالة والفرع أو المجلد الخاص به مسمى ب› art

    والملف الأصلي لفهرس المقال اسمه main.html
    والمقال طويل جدا ومقسم في عدة صفحات html
    أسماء الملفات كالتالي:

    كود PHP:
    1.html
    2.html
    3.html
    4.html
    5.html
    6.html
    7.html
    8.html
    .
    .


    أما عن القالب الأصلي هو php ونستدعي الملفات المذكورة في الأعلي بواسطة الكود البرمجي التالي:


    كود PHP:

    if ($page != "") { include($page.".html");
                      } else {
                         include(
    "main.html");
                      } 
    الروابط للوصول إلي الملفات يكون كالتالي:

    كود PHP:

    localhost
    /?page=art/main

    localhost
    /?page=art/


    كما ترون أنه البرمجة لهذه الأسماء سهلة› يتم كشف رقم الملف الحالي بواسطة طرق برمجية ومن ثم يتم إنشاء الزرين السابق والتالي للدخول إلي الصحفات بشكل مسلسل

    طبعا الطريقة ما تفرق إذا كانت بواسطة إنشاء قواعد بيانات أو بواسطة استخدام ملفات
    المهم نريد درس لهذه الطريقة› أسماء الملفات معلومة وداخل فرع معين والحين نريد إنشاء السابق والتالي

    أتمني مشاركة المبرمجين وشرح الكود لنا لكي نتعلم موو بس نستنسخ ونلصق

    أنتظركم
    تقبلوا تحياتي






    haidar غير متواجد حالياً


  2. #2


    إذا عرفت عدد الصفحات ممكن تستخدم حلقة نكرار for
    كود PHP:
    for ($p=1$p<=$pages$p++)
    $code .= "<a href=localhost/?page=art/$p></a> | "
    أو بأي تنسيق تحب

    وإذا لم ترد أن تضع رابط على رقم الصفحة الحالية ممكن تسثتنيها بشرط

    كود PHP:
    for ($p=1$p<=$pages$p++)
    if (
    $p == $current_page)
    $code .= $p." |";
    else
    $code .= "<a href=localhost/?page=art/$p></a> | "
    وأعتذر عن الاختصار





    __________________
    عزوز الحسني
    أبو ماجد الصارم غير متواجد حالياً

  3. #3
    عضو سوبر نشيط
    تاريخ التسجيل
    Mar 2002
    المشاركات
    889


    شكرا لك يا أستاذ (أبو ماجد الصارم)
    عرفت الموضوع 100%
    لي رجعة بتعمق أكثر

    وأعتذر عن الاختصار
    يا أستاذ حضورك في الموضوع يكفي حتى ولو كنت تكتب up





    haidar غير متواجد حالياً

  4. #4
    عضو سوبر نشيط
    تاريخ التسجيل
    Mar 2002
    المشاركات
    889


    السلام عليكم
    عفوا على التأخير

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

    حين انشاء أرقام الصفحات واستثناء الصفحة الحالية وعدم اعطاءها الرابط هل يكون بواسطة أوامر التناظر والاستبدال eregi_replace

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

    كود PHP:

    $code 
    .= "<a href=localhost/?page=art/$p></a> | "
    أنا أفكر أنه مع استخدام أوامر التناظر والاستبدال والمتغيرات المحيطية في الآباتشي نقدر نصل إلى هذا المطلوب


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

    ومرة أخرى أشكر الأستاذ أبو ماجد بسبب تفاعله مع هذا الموضوع

    انتظركم





    haidar غير متواجد حالياً

  5. #5
    عضو سوبر نشيط
    تاريخ التسجيل
    Mar 2002
    المشاركات
    889


    ^





    haidar غير متواجد حالياً

  6. #6
    عضو سوبر نشيط
    تاريخ التسجيل
    Mar 2002
    المشاركات
    889


    للصبح^





    haidar غير متواجد حالياً

  7. #7


    الكود التالي يخزن لك أسماء الملفات في مصفوفة
    كود PHP:
    if($handle opendir("./")){
     
     
    // Loop through all files
     
    while(false !== ($file readdir($handle))){
       
       
    // Ignore hidden files
       
    if(!preg_match("/^\./"$file)){
         
         
    // Put files in $files[]
         
    if(!is_dir($file)){
           
    $files[] = $file;
         }
       }
     }
    // Close directory
     
    closedir($handle); 
    أوامر التناظر والاستبدال لا أستخدمها كثيراً لذلك لا أجيدها، تأخرت في الرد حتى تجد مساعدة من غيري، ولكن





    __________________
    عزوز الحسني
    أبو ماجد الصارم غير متواجد حالياً

  8. #8


    كود PHP:
    <?php
    $ESCAPE 
    '2';


    getFiles(&$FILES);

    $PAGE = isset($_GET['p']) ? $_GET['p'] : (isset($HTTP_GET_VARS['p']) ? $HTTP_GET_VARS['p'] : 'main');
    $PAGE str_replace('.'''$PAGE);
    $PAGE trim($PAGE);
    $PAGE .= '.html';

    $OK 0;
    for(
    $i=0$i<count($FILES); $i++)
    {
     if(
    $FILES[$i] == $PAGE)
     {
      
    $OK 1;
     }
    }

    if(
    $OK == 1)
    {
     include(
    $PAGE);

     
    $PAGE = (int) $PAGE;

     if(
    $PAGE 0)
     {
      if(
    $PAGE 1)
      {
       echo 
    '<a href="'.$_SERVER['PHP_SELF'].'?p='.($PAGE-1).'">&Ccedil;&aacute;&Oacute;&Ccedil;&Egrave;&THORN;</a>';
      }
      else
      {
       echo 
    '<a href="'.$_SERVER['PHP_SELF'].'?p=main">&Ccedil;&aacute;&Oacute;&Ccedil;&Egrave;&THORN;</a>';
      }
     }
     else
     {
      echo 
    '&Ccedil;&aacute;&Oacute;&Ccedil;&Egrave;&THORN;';
     }

     echo 
    ' - ';

     if(
    $PAGE == (count($FILES)-$ESCAPE))
     {
      echo 
    '&Ccedil;&aacute;&Ecirc;&Ccedil;&aacute;&iacute;';
     }
     else
     {
      echo 
    '<a href="'.$_SERVER['PHP_SELF'].'?p='.($PAGE+1).'">&Ccedil;&aacute;&Ecirc;&Ccedil;&aacute;&iacute;</a>';
     }
    }
    else
    {
     exit;
    }

    function 
    getFiles($x)
    {
     
    $x = array();

     if(
    $dir opendir('./'))
     {
      while(
    false !== ($file readdir($dir)))
      {
       if(
    $file != '.' && $file != '..' && is_file($file))
       {
        
    $x[] = $file;
       }
      }
     }
     else
     {
      exit;
     }

     
    closedir($dir);
    }
    ?>






    __________________
    ArabBB ... SoooooN!
    Al Mobarmeg المبرمج غير متواجد حالياً

  9. #9
    عضو سوبر نشيط
    تاريخ التسجيل
    Mar 2002
    المشاركات
    889


    رد مقتبس من أبو ماجد الصارم
    الكود التالي يخزن لك أسماء الملفات في مصفوفة
    كود PHP:
    if($handle opendir("./")){
     
     
    // Loop through all files
     
    while(false !== ($file readdir($handle))){
       
       
    // Ignore hidden files
       
    if(!preg_match("/^\./"$file)){
         
         
    // Put files in $files[]
         
    if(!is_dir($file)){
           
    $files[] = $file;
         }
       }
     }
    // Close directory
     
    closedir($handle); 
    أوامر التناظر والاستبدال لا أستخدمها كثيراً لذلك لا أجيدها، تأخرت في الرد حتى تجد مساعدة من غيري، ولكن
    شكراً، أخي الأستاذ هل تقدر تشرح لي هذا الأمر اللي يغمض عينه عن الملفات المخفية


    كود PHP:

       
    if(!preg_match("/^\./"$file)){ 
    وتقبل تحياتي

    الأستاذ Al Mobarmeg المبرمج

    شكراً وسأرجع





    haidar غير متواجد حالياً

  10. #10
    عضو سوبر نشيط
    تاريخ التسجيل
    Mar 2002
    المشاركات
    889


    أشكرك يا أستاذ Al Mobarmeg المبرمج





    haidar غير متواجد حالياً

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


    يا إخوان حد يمسح ال php علشان نشوف الكود

    لأن كدة الواحد مش هيستفاد حاجة





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





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

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

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