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

الموضوع: جزء من القالب في حلقة التكرار، مصيبة!

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

    جزء من القالب في حلقة التكرار، مصيبة!



    كيف أقدر استدعي قسم محدد من قالب

    بسبب وقوع ملف أوامر الـ HTML في حلقة التكرار، أردت عندما أستدعي ملف القالب فقط تتكرر عبارات المحددة من القالب، ليس كل العبارات

    ملف الاستعلام (PHP & MySQL)

    كود PHP:

    $Sql 
    "select * from table Where secID='0' order by id";
    $Result mysql_query($Sql);
    while (
    $Row mysql_fetch_array($Result))
    {
    extract($Row);

        
    $tbl template("templates/right.htm");
        eval(
    "echo stripslashes(\"$tbl\");");



    ملف أوامر الـ HTML (قالب بسيط) _ right.htm

    كود:
    <div id=sec>
    <div id=menudir>
    <!--menu-s--><ul>
      <li>$title</li>
    </ul><!--menu-f-->
    </div>
    </div>
    ملف القالب يعني right.htm يتكرر بجميع أجزائه بسبب وقوعه في حلقة التكرار while، أريد فقط تكرار العبارة المحصورة بين
    <!--menu-s-->
    و
    <!--menu-f-->
    في ملف right.htm

    ما الحل

    أشكركم مقدماً





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


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


    هنالك اكثر من حل


    1- ضعها في متغير

    2- انهي عمليه while

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





    المهمة9 غير متواجد حالياً

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


    شكراً لك أخي المهمة9
    كيف أقسم وأخزن جزء جزء من ملف الـ HTML قبل ما استدعيه
    إذا تقدر وضح لي أكثر رجاءً

    أما فكرت بطريقة ولهذا أدرجت علامتين في ملف right.html
    هما
    <!--menu-s-->
    و
    <!--menu-f-->

    وهي أني أقرأ وأفتح ملف right.html ثلاثة مرات في ملف برمجة PHP بواسطة التابعين fopen و fread، مرة قبل بدء حلقة التكرار إلى علامة <!--menu-s--> ومرة داخل حلقة التكرار فيما بين العلامتين ومرة بعد حلقة التكرار بعد علامة <!--menu-f-->

    أما كيف أكتبه، ما أعرف:shy:

    وأشكرك مرة أخرى لمساعدتي






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

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


    السلام عليكم و رحمة الله و بركاته ..
    أخي haidar

    سبق و أن كتب الأخ د.سيرفر موضوعاً شبيها ً بهذا و لا أدري أينَ وصلت الردود فيه ..

    نفس المشكلة مرّت معي ..
    و كنتُ أنوي نشر طريقتي في حلّها و تعذّر ذلك للأسف .. رغم حرصي على النشر ..

    سأذكر الحل مع قالب مخزّن في قاعدة البيانات ( لا أحبذ التعامل مع الملفات )

    محتويات القالب :
    كود PHP:
    <html dir=rtl>
    <
    title>السلام عليكم</title>
    <
    body bgcolor=#0c0c0c>
    <center><b>قائمة أسماء الأعضاء<br></b>
    <
    loop>
    <
    br>$name
    <loop>
    </
    body>
    </
    html
    لاحظ أنني ميّزت الجزء الذي أريد تكراره بـ <loop>

    الآن في الملف نستدعي القالب من القاعدة و من ثمّ ننشئ مصفوفة تقسّم القالب إلى ثلاثة أجزاء الجزء الأول قبل loop الأولى .. و الثاني بين الأولى و الثانية .. و الجزء الثالث بعد loop الثانية

    فلنفترض أن اسم القالب index
    كود PHP:
    $pindex explode ("<loop>",$index); 
    الآن أصبحت لديك مصفوفة بالاجزاء الثلاثة التي ذكرتها سابقاً بالأسماء التالية :
    $pindex[0]
    $pindex[1]
    $pindex[2]
    الجزء الذي تحتاج تكراره في الحلقة هو $pindex[1]

    عذراً الرد غير منسق فحالياً أكتب من المقهى





    __________________
    إن كانَ عندك يا زمانُ بقيّةً
    ممّا يُهان بها الكرامُ فهاتها !
    __________
    يا أهل سوالف سوفت .. اكتبوا غير الـفاشل و لا تكتبوا الغير فاشل :) .. (غير) لا تُعرّف يرعاكم الله .
    omars غير متواجد حالياً

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


    وعليكم السلام ورحمة الله وبركاته
    شكراً لك أخي عمر
    شرح وافي
    وفهمته 100%
    واستخدمت القالب مع قواعد البيانات

    اما عندي مشكلتين:

    أولاً: لاستدعاء الجزء الأول من المصفوفة قبل الحلقة ما أكتب أقصد:
    $pindex[0]

    ثانياً: أنشأت جدول خاص بالقالب كما قلت أنت يا أخي واستدعيته وهو يحتوي على متغيرات ومقدار المتغيرات في جدول آخر، كيف استدعي مقدار المتغيرات من الجدول الآخر، لأنه الآن يطبع المتغير في الصفحة ليس مقداره، يعني كذا $var

    شكراً لك





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

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


    أهلاً ..

    بالنسبة لمشكلتك فهي بسيطة بإذن الله .. و حلّها مع الدالة eval

    المسألة ان هناك فنكشن خاص باستدعاء القوالب من القاعدة .. و نطبق عليه الفنكشن أددسلاش

    اسمع يا سيدي الفاضل ..

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

    اتمنى لو الأخ sa-php يشاركنا هنا .. و أنا سأجتهد صادقاً أن أجيبكَ على الأسئلة قبل السفر ..


    مودّتي
    عمر بن عبدالعزيز





    __________________
    إن كانَ عندك يا زمانُ بقيّةً
    ممّا يُهان بها الكرامُ فهاتها !
    __________
    يا أهل سوالف سوفت .. اكتبوا غير الـفاشل و لا تكتبوا الغير فاشل :) .. (غير) لا تُعرّف يرعاكم الله .
    omars غير متواجد حالياً

  7. #7
    عضو فعال
    تاريخ التسجيل
    Feb 2002
    المشاركات
    1,247
    __________________
    ومامن كاتب إلا سيفنى ****** ويبقي الدهر ماكتبت يداه
    فلا تكتب بكفك غير شيء ****** يسرك يوم القيامة أن تراه
    Dr.Server غير متواجد حالياً

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


    اخواني الأعزاء omars وDr.Server شكراً لكما





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





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

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

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