الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

الدرس الثالث

بدأه بسام العيساوي في 18 سبتمبر 2010 · 1 رد · 469 مشاهدة · في منتدى تطوير المواقع بـ PHP
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

ربما يتساءل البعض لماذا قمنا بعمل لغة خاصه للقوالب وما فائدتها

قبل أن أبدأ الدرس سأوضح هذه النقطه

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

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

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

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

www/template/website/index.inc

[FOR:"i","10","20"," print %i%<br>"end FOR]

كما ترى عرفنا متغير وهو i ثم طلبنا البدء بالرقم 10 والإنتهاء بالرقم 20 وفي كل مرة يطبع قيمة ال i من خلال الأمر %i%

النتيجه :

print 10
 print 11
 print 12
 print 13
 print 14
 print 15
 print 16
 print 17
 print 18
 print 19
 print 20

ماذا لو أردنا طباعه هذا الشكل

*   
 *  *   
 *  *  *   
 *  *  *  *   
 *  *  *  *  *   
 *  *  *  *  *  *   
 *  *  *  *  *  *  *   
 *  *  *  *  *  *  *  *   
 *  *  *  *  *  *  *  *  *   
 *  *  *  *  *  *  *  *  *  *

أكيد تتذكروا هذا الشكل في الدراسه :)

لعمليه طباعته نحتاج إلى جملتي تكرار متداخلات

[FOR:"i","1","10","
[FOR:"j","1","%i%","*  "
end FOR]
<br>
"end FOR]

كما يمكنك إستخدام متغير للبدء منه العمليه ومتغير آخر لإنهاء العمليه

[FOR:"x","[var:"j"end var]","[var:"i"end var]","%x% <br>  "end FOR]

النتيجه

post-21336-092681300 1284840535_thumb.pn

ملاحظه : ربما عليك تحميل آخر نسخة قبل البدء في تجربه الأمثله لأنني أقوم بتعديل النسخة كل فتره بسيطه وهذا المثال يعمل على النسخة 1.1

الآن نأتي إلى عمليه تكرار المصفوفات each

في مجلد الإضافات نقوم بإنشاء مجلد إختبار كما يلي

www/plugin/test/

ثم ننشئ داخل هذا المجلد ملف بإسم

index.php

نكتب داخل هذا الملف الشيفرة التاليه

<?php
$x[1]='a';
$x[2]='b';
$x[3]='c';
$x[4]='d';
?>

الآن سنقوم بعرض هذه المصفوفه داخل الموقع من خلال أوامر القالب

[EACH:"x","<hr>%x:key%:%x:val%
"end EACH]

لاحظ الأمر بسيط جدا , فقط طلبنا عمل تكرار للمتغير x الذي عرفناه كمصفوفه في ملف الإضافات ونستخدم مفتاح المتغير وقيمته لإظهار النتائج

النتيجة

1:a
2:b
3:c
4:d

ماذا لوقمنا بإضافة هذه المصفوفه داخل الإضافه

$_SESSION[x1][1]='x1';
$_SESSION[x1][2]='x2';
$_SESSION[x1][3]='x3';
$_SESSION[x1][4]='x4';

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

[EACH:"x1","<hr>%x1:key%:%x1:val%
"end EACH]

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

[EACH:"x1","session","<hr>%x1:key%:%x1:val%
"end EACH]

النتيجه

1:x1
2:x2
3:x3
4:x4

ولعمليه إرجاع قيمة من مصفوفه مثلا المفتاح 2 القيمة بي

$x[2]='b';

نكتب الأمر التالي :

[array:"x","2"end array]

وإذا كانت المصفوفه كجلسه عمل كما في المثال :

$_SESSION[x1][3]='x3';

نستخدم الأمر

[session_array:"x1","3"end session_array]

ولإرجاع أي متغير داخل الجلسه مثل :

$_SESSION[n]='this is session var';

نستخدم

[session_var:"n"end session_var]

هذا بإختصار لأهم الأوامر وستكون هناك أوامر كثيره يتم العمل عليها وسنشرح كما قلنا كيفيه إنشاء أمر معين

في الدرس القادم سنتحدث عن أمر جلب بيانات من قاعدة البيانات

بالتوفيق

فهرس الدورة

المرفقات
z4.png

CMS Sfhati , Website Generator


نظام إدارة المحتوى صفحتي ... جربه الآن 


 


small-logo.png

#2

السلام عليكم

بارك الله بك شرح كافي و عمل رائع جزاك الله خيراً

Everything will be fine when we TALK LESS, DO MORE


مواضيع مشابهة