ملاحظه لك اخي daif
لماذا لاتجعل القالب يمكن وضعه بمتغير ؟؟ بمعني
لانه مر علي قالب يتمتع بهالخاصية وافادتنيكود PHP:
$tpl_show_last_10 = $tpl->display("last_10.html");
// بعدها اطبع القالب
echo $tpl_show_last_10;
ولك ارق تحية
ملاحظه لك اخي daif
لماذا لاتجعل القالب يمكن وضعه بمتغير ؟؟ بمعني
لانه مر علي قالب يتمتع بهالخاصية وافادتنيكود PHP:
$tpl_show_last_10 = $tpl->display("last_10.html");
// بعدها اطبع القالب
echo $tpl_show_last_10;
ولك ارق تحية
__________________
بي اتش بي العرب : php-ar.com
دروس PHP خاص : phpfaq.php-ar.com
new site : www.naifphp.net/web
أخ العزيز daif ..
مع صغر حجم الكلاس إلا أنه فعّال .
قمت بتجربته و هو فعلاً ممتاز ..
و أعتقد أن ما ذكره الأخ الجريح فعلاً مطلوب في البرنامج ، لا أعرف أن كان يقصد ما أقصد و لكن أنا أقصد أن يكون هنالك مجال لتخزين الناتج في متغير بدل طباعته على الشاشة ..
أخوكم ..
__________________
إن كان الكلام من فضة ، فالسكوت من ذهب
نعم اخي ابو كامل
اخزن القالب في متغير واطبعه باي جزء بالموقع ..
__________________
بي اتش بي العرب : php-ar.com
دروس PHP خاص : phpfaq.php-ar.com
new site : www.naifphp.net/web
هل من الممكن التوضيح لكل من لم يفهم الموضوع ؟؟
__________________
استخدم خاصية تنبيه المشرفين للضرورة وعند ملاحظة موضوع يخالف قوانين منتديات سوالف وسيتم مراجعة الموضوع او المشاركة المبلغ عنها على الفور
الأخ الكريم daif
مشكور، قالب سهل الاستخدام
لكن عندي سؤال عن كيفية استخدامه مع قاعدة البيانات وتكرار النتائج <LOOP>
ملف القالب باسم html.html
ملف السكربتكود:<DIV> <UL> <LOOP> <LI><A href="page.php?pageid={{id}}">{{title}}</A></LI> </LOOP> </UL> </DIV>
كود PHP:
include("easytemplate.php");
$sql=mysql_query("select * from table Where pageid='0' order by id ASC");
while($row=mysql_fetch_array($sql)){
extract ($row);
}
$tpl = new EasyTemplate;
$tpl->display("html.html");
أيضاً إذا ممكن احكي لي عن الفولدر easycash
أظن تفيد للتسريع حين التصفح
هل القالب يعمل بدون مشاكل بدونها
هذا وتقبل تحياتي
أخي الكريم مُجَاهِد تفضل
http://www.daif.net/index.php?show=artical&id=9
أخي العزيز جريح
مع الأسف موقع بي اتش بي العرب كل كم يوم يوقف عن العمل، أخي موقعك مفيد جداً، إن شاء الله يرجع أفضل من السابق
اهلا اخي حيدر ..
ان شاء الله يرجع قريب باذن الله ، وشكرا لاهتمامك ..
بنظري السريع للقالب اضن ان الكود ليعمل
وتقبل تحياتيكود PHP:
include("easytemplate.php");
$sql=mysql_query("select * from table Where pageid='0' order by id ASC");
$tpl = new EasyTemplate;
while($row=mysql_fetch_array($sql)){
extract ($row);
$tpl->display("html.html");
}
__________________
بي اتش بي العرب : php-ar.com
دروس PHP خاص : phpfaq.php-ar.com
new site : www.naifphp.net/web
هلا اخوي
ممتاز والله مره القالب ممتاز
بس نبى نطور شى حتى يصير لنا اعتماد عليه العرب ككل
واحب اعرض مشاركتى بتطوير Template system خاص بى من فتره ولكنى لم اعرضه
وهذا ملف الدوكمنتيشن (ملحوظه قررت عرض محرك القوالب وذلك للفائده العامه والتطوير
هناك اكثر من 20 موقع مبرمجين منى اعتمادا على القالبكود PHP:
template class documentation
==========================================================
powered by islam el-naggar
==========================================================
1-class
TemplateSystem
|
|---- TemplateSystem ($template_file_url)
|
| starts automaticlly when the class was called this method
| was set to intilize the class and get the template file data
|
| <<params>>
| 1-template url <String>
| the path of the template file (i.e: tamplates/index.html)
|
|---- doMTemp ($starthtmlcommment, $endhtmlComment, $VarsArray, $lastText = "")
|
| start when called to get the block of code to process multiple template
| it's check up the data wanted then try to get the html code
| and replace it with the data provided with the $vararr array
|
| <<params>>
| 1-$starthtmlcomment <String>
| the start of the block of html code (i.e: <!--start category row-->)
|
| 2-$endhtmlComment <String>
| the end of the block of html code (i.e: <!--end category row-->)
|
| 3-$VarsArray < multidiminstional array>
| the array contain the resourse data the will be replaced with variables
| (i.e:)
| Array
| (
| [0] => Array
| (
| [name] => "islam"
| [ids] => 1
| )
|
| [1] => Array
| (
| [name] => "ahmed"
| [id] => 2
| )
|
| )
|
| 4-$lastText <resourse> (optional)
| used when the row wasn't the first row this mean that you have
| else one or more than template row before you must
| use this for having the resourse of previous template
| processing function
| (i.e:)
| $temp1 = $int->doMTemp("<!--start row-->","<!-- end row-->",$results);
| $int->doMTemp("<!--start row2-->","<!-- end row2-->",$results2,$temp1);
|
|
|---- printErrorMsg ($msgData ,$centered=1)
| used to print out message stored in message array
|
| <<params>>
|
| 1- $msgData <string>
| message to be print
|
| 2- $centered <int> (optional)
| 0 -> to be centered in the browser using <center> tag
| 1 -> to be normal as the text
|
|
|
|----doSTemp ($signleDataArray)
| used to process single variables in templates file
| all the tamplates single varibales stored in array without the dollar -
| sign($)
| array
| (
| "title"=> "welcome here again", //$title var
| "copyright"=> "powered by islam el naggar" //$copyright var
| )
| <<params>>
| 1- $signleDataArray <array>
| (i.e:)
| array
| (
| "title"=> "welcome here again", //$title var
| "copyright"=> "powered by islam el naggar" //$copyright var
| )
|
|
|---- OutPutTemp ()
| print out the template after processing
|
|
|---- freeMemory ()
| free up the memory and unset the vars from the memory to be faster
|
|
|
|--------------------------------------------------------------------------------------------
| islam mohamed el naggar <islamelnaggar@gmail.com> <islam992001@hotmail.com>
|--------------------------------------------------------------------------------------------
v 0.2
----------------------------------------------------------------
update the way that free up memory by merging all the super-global
arrays and unset them all
----------------------------------------------------------------
bug 1 : in the version 0.1 you cann't use the static array itself
so you must use multiple array first
=========================================================
this bug was fixed in the version 0.2 as you can use the
template variables only ,.. by adding testing if the multiple
template used before or not to take the target sourse file of
the page
/* updated in version 0.2 */
//check if the multiarray template used before
if ($this->tempFinStr == "" || empty($this->tempFinStr))
{
//not used before
$allLatestData = $this->pgSourse; //the sousre was the original file source
}
else
{
$allLatestData = $this->tempFinStr; //the sourse was the finaltext after modifing it was the multiple functions
}
----------------------------------------------------------------
اخرهم
:http://www.d44d.com/waqf/index.php
آسف على التأخر في الرد .
هنا شرح لكل وسم http://www.daif.net/easy/?show=example
جريح: تم ذلك
islam992001: القالب مفتوح المصدر
haidar:
يجب تعيين اسم المتغير (دائما مصفوفه) لدالة التكرار LOOP
صفحة temp.html
ملف phpكود:<DIV> <UL> <LOOP NAME="rows"> <LI><A href="page.php?pageid={{id}}">{{title}}</A></LI> </LOOP> </UL> </DIV>
كود PHP:
<?
//أدراج محرك القوالب
include("easytemplate.php");
//ارسال استعلام لقاعدة البينات
$sql=mysql_query("select * from table Where pageid='0' order by id ASC");
//جلب البينات وتخزينها في مصفوفه
while($row=mysql_fetch_array($sql)){
$rows[] = $row;
}
//انشاء كائن المجرك
$tpl = new EasyTemplate;
//معالجة الملف وعرضه
$tpl->display("temp.html");
?>
__________________
ضيف الله العتيبي مبرمج حر و مهندس معتمد من زيند (ZCE)
الاتصال: daif@daif.net او جوال: 0556639884
الخدمات: تقديم استشارات برمجيه, تطوير بوابات/خدمات إلكترونيه للقطاع العام او الخاص .
أخي جريح مشكور على الرد
###
أخي daif مشكور، ما عينت اسم المتغير لدالة التكرار لأنه كنت ما أعرف مع أي شيء تساوي هذه المصفوفة عند الاستعلام
$rows[] = $row;
الأن عرفت، مشكور وجزاك الله خير الجزاء
بسم الله الرحمن الرحيم
اخى الكريم اهنئك على هذا العمل الكريم وإن شاء الله نراه البديل العربى لمحرك سمارتى
لكن اعتقد ان القالب يفتقد لنقطة هامة وهى وظيفة الاسناد assign مثلا
لتقوم هذه باتاحة هذا المتغير الى القالب بدلا من اتاحة جميع المتغيرات التى وجدت بالجزء البرمجى كما هو الحال الانكود PHP:
<?php
$tpl->assign('varName' , 'val');
?>
ايضا كما ذكر بعض الاخوة تحتاج الى نظام cache فبدلا من اظهار الناتج للمتصفح قد يكون المطلوب هو الاحتفاظ بالنتيجة فى متغير
ارجو ان تتقبل هذه الملحوظات بصدر رحب لان الهدف منها هو الارتقاء بهذا العمل بمشيئة الله
__________________
أكواد نت مفهوم جديد للبرمجة العربية
www.akwad.net
Flash,Php,Java,ActionScript
أنصت للإبداع..
زمان يا نت :D
بالنسبه للداله assign جيده فقط اذا كنت تريد ارسال متغير بإسم آخر للقالب ... وقد أضيفها في النسخه القادمه مع الحفاظ على الخاصيه .
اما إعادة الناتج .. فقد تم ادراجها ... أصبح يتم إستخدامها
تم تحديث البرنامج في الموقع ... أشكر الكل على هذه الإقتراحات المفيده .كود PHP:
<?php
$page = $tpl->display("template.html");
print $page;
?>
__________________
ضيف الله العتيبي مبرمج حر و مهندس معتمد من زيند (ZCE)
الاتصال: daif@daif.net او جوال: 0556639884
الخدمات: تقديم استشارات برمجيه, تطوير بوابات/خدمات إلكترونيه للقطاع العام او الخاص .
أيضاً لم أستطع أن أفهم الفكرة جيداً..المشاركة الأصلية كتبت بواسطة haidar
أتمنى ان ارى فكرة مختصرة ..
__________________
استخدم خاصية تنبيه المشرفين للضرورة وعند ملاحظة موضوع يخالف قوانين منتديات سوالف وسيتم مراجعة الموضوع او المشاركة المبلغ عنها على الفور
عزيزي ضيف ،
حملت البرنامج .. وحاولت إستخدامه ..
ولكن بيقولي إن فيه فنكشن مش متعرفة ،
رجعت لملف التمبليت بتاع إيزي ..
لقيتك بالفعل مستخدم فنكشن .. بدون تعريف :S
الرجاء التأكد من النسخة الموجودة حاليا على الموقع ..
تحياتي
اذا كنت تقصد هذه الداله
file_get_contents
فهي متوفره في السخ
(PHP 4 >= 4.3.0, PHP 5)
إستخدمتها لانها الافضل في قرائة الملفات ... بدلا من الطريقة العاديه .
__________________
ضيف الله العتيبي مبرمج حر و مهندس معتمد من زيند (ZCE)
الاتصال: daif@daif.net او جوال: 0556639884
الخدمات: تقديم استشارات برمجيه, تطوير بوابات/خدمات إلكترونيه للقطاع العام او الخاص .