لدى كل مبرمج يا اخوان عدد من القوالب او الطرق التى يستخدمها لفصل
الكود البرمجي عن التصميم ممكن
كل مبرمج يبلغنا بس بطريقته وش مميزاتها اذا ما عليكم امر .......
لدى كل مبرمج يا اخوان عدد من القوالب او الطرق التى يستخدمها لفصل
الكود البرمجي عن التصميم ممكن
كل مبرمج يبلغنا بس بطريقته وش مميزاتها اذا ما عليكم امر .......
__________________
مؤسسة المهمات البرمجية
00966507585887
0507585887
www.mr-php.com.sa
www.mr-php.com
بكيفي لتحميل الملفات
القران الكريم
المجموعة السعودية للانترنت
الحرية .. نبض ومعنى
انا استخدم قوالب قواعد البيانات مع برمجة كلاسات خاصة بي للتعامل مع القوالب
افضل هذه الطريقة لانها اسهل في التطوير ... واسهل للمستخدم في التعديل على التصميم
__________________
شبكة مملكة العرب
---------------------
استضافة مواقع تبدأ من 100 ريال سنويا
خطط خاصة للموزعين
سكربت دليل المواقع
www.aknet.com
بالنسبه للى افضل كتابت بعض الدوال أو حتى صنع كلاس للنظام
واستخدمها وطبعا العرض عن طريق الدالة eval
سوا تخزين التمبلت بقاعدة البيانات
أو
بملفات
بدون الاستعانه باى نظام قوالب جاهز
مميزاتها بالنسبه لى
افضل ميزه انى انا من قمت بكتابتها
لسهولة استخدامها من قبل المستخدم والتعديل
وحتى تسهل عملية تطوير السكيربت
بامكانك رؤية اخر سكيربت قمت بعمله my golden ftp
وعمل نظام التمبلت فيه
اسف اذا كان كلامي غير كافي
فاذا نسيت توضيح شىء ياليت تذكيري به
__________________
المغردون العرب
all-the-vb
ممكن طريقة أو مثال على عمل الدالة
eval
موضوع في الصميم أخي المهمة 9 الله يوفقك
موضوع القوالب هو الناحية اللي لازالت تشغلني لأني لم أجد طريقة واضحة أو بدون مشاكل لعمل القوالب .. نزلت عدد من أنظمة القوالب العربية مثل smart tamplates ونظام قوالب للأخ ماستر وأيضا نزلت أنظمة أجنبية مثل pattamplates الألماني
لكن بالنهاية عدم استيعابي للكلاسات أعاقني عن الاستفادة منها في برامجي المتواضعة .. بس باقي باتكي له الكلاس هذا تكية يا أفهمه ولا أفهمه :anger2:
أخي عدام أنا استخدمت الدالة eval للقوالب وصارت معي المشكلة هذي ياليت تطلع عليها
http://www.swalif.net/softs/showthre...highlight=eval
بالأخير اطلعت على طريقة الأخ رضا في برنامج الناشر وكيفية عمل التامبلتس فيه وأعتمد على هذه الطريقة مبدئيا حتى نجد نظام القوالب المناسب
وشاكر لكم هالموضوع أخي المهمة 9
__________________
ومامن كاتب إلا سيفنى ****** ويبقي الدهر ماكتبت يداه
فلا تكتب بكفك غير شيء ****** يسرك يوم القيامة أن تراه
بالنسبة لي افضل طريقة لعمل القوالب بإستخدام eval كنت قد شرحة طريقتها هنا
http://www.swalif.net/softs/showthre...threadid=70536
__________________
مبرمج ومصمم المواقع التالية :
kifee.com
f3f3.com
alibabaa.com
jawal4arab.com
والجاي أحلى :cool:
السلام عليكم,
أعجبني الموضوع, وقرأت اللينكات الموجوده في الموضوع وأعجبني موقع TemplatePower وهو جداً مفيد وقرأت الموقع بالكامل وأيضاً منتداهم الذي توجد به الكثير من التساؤلات والأجوبه من المختصين هنالك
أبو ذياب
__________________
وش عرف البدو في دوخة القدو
طيب جزاكم الله الف خير يا اخوان كلا باسمه على ردودكم
اتفقتم انه راحه المبرمج مع القالب ؟ هي المعيار .....
فهل من معايير اخرى ..
بمعنى انني لو قمت بعمل برنامج واستخدمت برنامج قوالب يريحني كمبرمج وقمت بتوزيع البرنامج بعد ذلك للتطوير من قبل مبرمجين اخرين
فمرحله تطوير البرنامج هل كل مبرمج سيتنزع القالب الذي وضعته او يضع قالبه الخاص
ستكون كمن يسير الى الخلف ....(حسب ظني)
بمعنى هل هنالك معايير قويه ترتبط بمعايير التصميم وترتبط ايضا باللغه كلغه برمجه لكي نحدد ان هذا القالب افضل من ذلك ؟
حقيقه بعد قرائتي للقوالب وقراءة مع احد الاخوان جزاهم الله خير
ذكر لي راي وكنت موافقا له .
الراى هو ان معرفتك باحد القوالب تلزمك بتعلم طريقه مبرمج القالب ولا تتيح لك الحريه ابدا
وجزاكم الله خير الجزاء
__________________
مؤسسة المهمات البرمجية
00966507585887
0507585887
www.mr-php.com.sa
www.mr-php.com
بكيفي لتحميل الملفات
القران الكريم
المجموعة السعودية للانترنت
الحرية .. نبض ومعنى
شكرا لكم
الاخوة الاعزاء أفضل أنظمة القوالب هو Template Engine
نظام قوالب ممتاز يوفر كثير من العناء
و ارفقه هنا للافادة
جزاكم الله خيراً على هذا الموضوع الحيوي
وفقكم الله
__________________
أستغفر الله :: أستغفر الله :: أستغفر الله ::
لا إله إلا أنت سبحانك أستغفرك وأتوب إليك إنى كنت من الظالمين
phparabia @ msn.com
رد مقتبس من PHP-ARABIA.com
الاخوة الاعزاء
أفضل أنظمة القوالب هو Template Engine
نظام قوالب ممتاز يوفر كثير من العناء
و ارفقه هنا للافادة
جزاكم الله خيراً على هذا الموضوع الحيوي
وفقكم الله
__________________
أستغفر الله :: أستغفر الله :: أستغفر الله ::
لا إله إلا أنت سبحانك أستغفرك وأتوب إليك إنى كنت من الظالمين
phparabia @ msn.com
السلام عليكم
حاليا استخدم PatTemplate ، وهو نظام رائع جدا خاصة لمن هم بمثلي لايبحثون عن عمل مواقع ضخمة للغاية ..
النظام سهل للغاية للغاية للغاية وبسيط بالتعامل وبامكان اي شخص العمل عليه لسهولته ..
وخصائصه عديدة منه عمل اللوب لتمبلتس
انشاء قوالب فرعية بداخل القالب الاصلي
اخفاء قالب وعدم اظاهره الا بشروط معينة
استدعاء قوالب اخرى بداخل القالب نفسه أي مشابه لخاصية include بالـ php
استخدام الشروط بالقوالب - if وأخوتها -
استدعاء القالب لا يكلفك كتابة اسطر كثيرة فقط سطرين !
اضافة ميزة جديدة له وهي الكاش ، اي يحتفظ بالقالب بالذاكره حتى يسرع من عملية استدعاءه مرة اخرى للزوار - ماجربت هالخاصية -
تعامله رائع وسلسل مع قواعد البيانات - وهذه اهم نقطة بالنسبة لي ..
باختصار : هو نظام قوي وبه خصائص عديدة - خاصة مع اصداره الجديد رقم 3 -
ويلبي احتياجات الكثيرين لسهولة استخدامه وقوته إن شاء الله تعالى
وهذا الموقع http://www.php-tools.de
ودمتم سالمين
__________________
إستخدم ملفك الخاص لكتابة توقيعك
وهذا محرك قوالب أخر
XTemplate
XTemplate is a template engine for PHP which allows you to store your HTML code apart from your PHP code. It has many useful features such as nested blocks and various kinds of variable interpolation, and yet the code is very short and very optimized.
__________________
أستغفر الله :: أستغفر الله :: أستغفر الله ::
لا إله إلا أنت سبحانك أستغفرك وأتوب إليك إنى كنت من الظالمين
phparabia @ msn.com
Dr.Server
بالنسبه لوصلة الموضوع التى وضعتها فالطريقه التى قمت بعملها غير صحيحة
المسألة ليست صعبه لاكن انتبه معي اشربلك كوب شاي وروق
<---- مطول
انت قمت بوضوع التمبلت الرئيسي والتمبلت الفرعي كتمبلت واحد
لاكن هذه طريقه غير صحيحه
المعروف والى انا اعمله واظن ان اغلب المبرمجين يعمله وحتى في برامج المنتديات
ان يكون هناك 2 تمبلت
واحد رئيسي للاشياء التى لاتتكرر (حسب مثالك) يكون فيه بيانات المشاركين
وواحد فرعي للتكرار (حسب مثالك) يكون فيه اسم العضو + المشاركه
وهناك شىء اخر انك لاتحتاج عمل تكرار عند طلب التمبلت لانك تطلب صف واحد فقط
يمكن يكون الشرح غير مفهوم قليلا لاكن مع المثال سيتضح كل شىء
اولا سوف اضع مثالك ونقوم بالتعديلات عليه
حسب الكلام الى قلناه قبلكود PHP:
@mysql_connect("$server","$db_user", "$db_pass");
@mysql_select_db("$database");
$res=mysql_query("SELECT * FROM info");
while ($row = mysql_fetch_array($res)){
$name=$row[name];
$comm=$row[comm];
$W = mysql_query("SELECT * FROM templates WHERE (id = 1)");
while($rot=mysql_fetch_array($W))
{
$temp_aot = $rot["tamp_code"] ;
$temp_aot=str_replace('"',"'",$temp_aot);
eval("\$temp_aot =\"$temp_aot\";");
echo $temp_aot;
}
}
انا لن نحتاج عمل تكرار يعني لاراح يزيد ولا يأخر
اذا كنا طالبين تمبلت واحد
سوف يصبحكود PHP:
$W = mysql_query("SELECT * FROM templates WHERE (id = 1)");
while($rot=mysql_fetch_array($W))
{
$temp_aot = $rot["tamp_code"] ;
$temp_aot=str_replace('"',"'",$temp_aot);
eval("\$temp_aot =\"$temp_aot\";");
echo $temp_aot;
}
والان نضع التمبلت الفرعي داخل تكرار الى عملنا للاعضاءكود PHP:
$W = mysql_query("SELECT * FROM templates WHERE (id = 1)");
$rot=mysql_fetch_array($W);
$temp_aot = $rot["tamp_code"] ;
$temp_aot=str_replace('"',"'",$temp_aot);
eval("\$temp_aot =\"$temp_aot\";");
echo $temp_aot;
والتمبلت الرئيسي بعد التكرار وليس بداخله
والان نحذف امر طباعة التمبلت من التمبلت الفرعيكود PHP:
@mysql_connect("$server","$db_user", "$db_pass");
@mysql_select_db("$database");
$res=mysql_query("SELECT * FROM info");
while ($row = mysql_fetch_array($res)){
$name=$row[name];
$comm=$row[comm];
$W = mysql_query("SELECT * FROM templates WHERE (id = 1)");
$rot=mysql_fetch_array($W);
$temp_aot = $rot["tamp_code"] ;
$temp_aot=str_replace('"',"'",$temp_aot);
eval("\$temp_aot =\"$temp_aot\";");
echo $temp_aot;
}
$W = mysql_query("SELECT * FROM templates WHERE (sid = 2)");
$rot=mysql_fetch_array($W);
$temp_aot = $rot["tamp_code"] ;
$temp_aot=str_replace('"',"'",$temp_aot);
eval("\$temp_aot =\"$temp_aot\";");
echo $temp_aot;
حتى لايقوم بطباعة التمبلت الفرعي قبل التمبلت الرئيسي
ونقوم بتعريف التمبلت الفرعي بمتغير ونضعه بالتمبلت الرئيسي
مثلا $dr_bits
حتى عندما نقوم بامر طباعة التمبلت الرئيسي
يقوم بطباعة التمبلت الفرعي
بالمكان الذي يناسبنا
وحتى يتكرر فقط التمبلت الفرعي وليس الرئيسي
والان انتهينا لاكن عند التنفيذ لن يحدث التكراركود PHP:
@mysql_connect("$server","$db_user", "$db_pass");
@mysql_select_db("$database");
$res=mysql_query("SELECT * FROM info");
while ($row = mysql_fetch_array($res)){
$name=$row[name];
$comm=$row[comm];
$W = mysql_query("SELECT * FROM templates WHERE (id = 1)");
$rot=mysql_fetch_array($W);
$temp_aot = $rot["tamp_code"] ;
$temp_aot=str_replace('"',"'",$temp_aot);
eval("\$dr_bits =\"$temp_aot\";");
}
$W = mysql_query("SELECT * FROM templates WHERE (id = 2)");
$rot=mysql_fetch_array($W);
$temp_aot = $rot["tamp_code"] ;
$temp_aot=str_replace('"',"'",$temp_aot);
eval("\$temp_aot =\"$temp_aot\";");
echo $temp_aot;
فهذى النقطه مهمه جدا جدا
عند
في التمبلت الفرعي والذى نريده ان يتكرر
eval("\$dr_bits =\"$temp_aot\";");
نضع
قبلكود PHP:
.
والان الكود النهائيكود PHP:
=
والان نضع بالتمبلت الرئيسيكود PHP:
@mysql_connect("$server","$db_user", "$db_pass");
@mysql_select_db("$database");
$res=mysql_query("SELECT * FROM info");
while ($row = mysql_fetch_array($res)){
$name=$row[name];
$comm=$row[comm];
$W = mysql_query("SELECT * FROM templates WHERE (id = 1)");
$rot=mysql_fetch_array($W);
$temp_aot = $rot["tamp_code"] ;
$temp_aot=str_replace('"',"'",$temp_aot);
eval("\$dr_bits .=\"$temp_aot\";");
}
$W = mysql_query("SELECT * FROM templates WHERE (id = 2)");
$rot=mysql_fetch_array($W);
$temp_aot = $rot["tamp_code"] ;
$temp_aot=str_replace('"',"'",$temp_aot);
eval("\$temp_aot =\"$temp_aot\";");
echo $temp_aot;
وقد افترضنا ان الايد حقه رقم 2
والان نضع بالتمبلت الفرعيكود PHP:
بيانات المشاركين <br>
$dr_bits
وقد افترضنا ان الايد حقه رقم 1
وفيه نضع الجزء الذى نريد تكراره
تعتمد ان تكون الطريقه تفصيليه حتى يسهل فهمها وحفظهاكود PHP:
$name<br>
$comm<br>
واى استفسار يخطر ببالك انا حاظر ياالغالي
--------
fayz
الاخ fasal
ماقصر
All-the-vb
__________________
المغردون العرب
جميعكم يا اخوان جزاكم الله الف خير ....
لكن ما احد علق علي ردي السابق ؟
__________________
مؤسسة المهمات البرمجية
00966507585887
0507585887
www.mr-php.com.sa
www.mr-php.com
بكيفي لتحميل الملفات
القران الكريم
المجموعة السعودية للانترنت
الحرية .. نبض ومعنى