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

الدرس الثالث : كتابة تطبيقات بسيطه

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

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

تطبيق آله حاسبه !

نحتاج في هذا التطبيق إلى حقلين نصيين وخمسة أزرار (* / + - =) هذا كله مكتوب بلغه html في هذا الإطار يتم فصل اللغات يعني html في مجلد القوالب

C:\xampp\htdocs\urorbit_fw\template\urorbit

نقوم بإنشاء قالب ويكون بإمتداد .inc

القالب الرئيسي والذي ينفذ أولا هو index.inc

لنفتح هذا القالب

post-21336-085338100 1327645342_thumb.pn

سنجد بعض الأكواد الخاصه بهذا الإطار وهي أكواد بسيطه ولكن مفيده جدا وتختصر الكثير وأهم مايميزها هو إغلاق الكثير من الثغرات المهمه

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

post-21336-012649600 1327646039_thumb.pn

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

post-21336-001724800 1327654866_thumb.pn

post-21336-098426900 1327654912_thumb.pn

في ملف الهيدر

header.inc

<!DOCTYPE HTML>
<html><head>
    	<meta http-equiv="content-type" content="text/html; charset=UTF-8">
    	<title>Urorbit FW - Demos </title>
    	[var:"css_compression"end var]

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

في ملف الفوتر نكتب

footer.inc

[var:"js_compression"end var]
</body>
</html>

في السطر الأول شيفره لتظمين ملفات الجافاسكريبت

نبدأ الآن بكتابة تطبيقنا الصغير

أولا تظمين ملف الهيدر والفوتر في القالب الرئيسي

[include:"header.inc"end include]

هنا الكود الخاص بنا html 
[include:"footer.inc"end include]

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

[include:"header.inc"end include]
<form method="post">
	<label for="n1">الرقم الأول</label>
	<input id="n1" name="n1"/>

	<label for="n2">الرقم الثاني </label>
	<input id="n2" name="n2"/>

	<br/>

	<button name="plus" type="submit">+</button>
</form>
[include:"footer.inc"end include]

سنكتفي مبدئيا بعمليه الجمع ... بعد حفظ العمل نذهب إلى موقعنا لنرى التالي

موقعنا على هذا الرابط

http://localhost/urorbit_fw/

post-21336-084532100 1327655547_thumb.pn

الآن سنقوم ببرمجه عمليه الجمع ..كود بي أتش بي , وأكواد البي أتش بي في هذا الإطار يتم وضعها في مجلد الإضافات داخل أي مجلد نريد , نذهب إلى مجلد الإضافات وننشئ مجلد بإسم mywork وداخل هذا المجلد ننشئ ملف بإسم index.php وأي كود سيتم وضعه داخل هذا الملف سيتم تنفيذه فورا

post-21336-014676100 1327655780_thumb.pn

وسم إغلاق شيفرة بي أتش بي يفضل حذفه (الذي عليه دائره) لن يتأثر الكود إذا تركت وسم بي أتش بي دون إغلاق

الآن نحذف التعليقات ونكتب الكود الخاص بنا , سنسأل هل تم إرسال الرقم الأول والرقم الثاني ؟ الرقم الأول إسمه n1 والثاني n2

لن نضطر لكتابه إسم المتغير كما يلي :

$_GET[n1] or $_POST[n1]

فإطار العمل يقوم بفلترة جميع المتغيرات القادمه وماعليك سوى إستدعاء المتغير بالطريقه البسيطه

 $n1

إذن الكود يصبح

<?php
if($n1 && $n2){
	$result_mywork="n1=$n1 and n2=$n2";
}

هنا سألنا إذا هناك قيمه في الرقم الأول وقيمة في الرقم الثاني إذن قم بجعل المتغير نتائج عملي (result_mywork) تساوي الرقم الاول والرقم الثاني , لاحظ لم نقم بطباعه الناتج فورا لأن هذا يعني عدم فصل اللغات والنتيجه ستكون مشاكل في التصميم .. إذا كيف يتم طباعه النتيجه؟

هناك شيفره خاصه بالإطار تقوم بطباعه اي متغير في مكان وجود هذه الشيفره وهي كالتالي

[var:"result_mywork"end var]

لاحظ كتبنا المتغير بدون علامة الدولار $

الآن تصبح صفحة القالب الرئيسي كما يلي

[include:"header.inc"end include]
<form method="post">
	<label for="n1">الرقم الأول</label>
	<input id="n1" name="n1"/>

	<label for="n2">الرقم الثاني </label>
	<input id="n2" name="n2"/>

	<br/>

	<button name="plus" type="submit">+</button>
</form>

[var:"result_mywork"end var]
[include:"footer.inc"end include]

نذهب إلى موقعنا ونرى النتائج بعد إضافه رقمين

post-21336-099983300 1327656492_thumb.pn

الآن نقوم بالرجوع إلى كود php ونسأل سؤال آخر ... على ماذا تم الضغط + أو - !!

ليصبح الكود كما يلي

<?php
if($n1 && $n2){
	if(isset($plus))
	$result_mywork="$n1 plus $n2 = ".($n1+$n2);
}

بالتوفيق للجميع وإلى اللقاء في الدرس القادم بإذن الله

المرفقات
27-01-2012 08-21.png27-01-2012 08-25.png27-01-2012 10-58.png27-01-2012 11-01.png27-01-2012 11-12.png27-01-2012 11-15.png27-01-2012 11-27.png

CMS Sfhati , Website Generator


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


 


small-logo.png

#2
بسام العيساوي كتب:

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

تطبيق آله حاسبه !

نحتاج في هذا التطبيق إلى حقلين نصيين وخمسة أزرار (* / + - =) هذا كله مكتوب بلغه html في هذا الإطار يتم فصل اللغات يعني html في مجلد القوالب

C:\xampp\htdocs\urorbit_fw\template\urorbit

نقوم بإنشاء قالب ويكون بإمتداد .inc

القالب الرئيسي والذي ينفذ أولا هو index.inc

لنفتح هذا القالب

post-21336-085338100 1327645342_thumb.pn

سنجد بعض الأكواد الخاصه بهذا الإطار وهي أكواد بسيطه ولكن مفيده جدا وتختصر الكثير وأهم مايميزها هو إغلاق الكثير من الثغرات المهمه

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

post-21336-012649600 1327646039_thumb.pn

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

post-21336-001724800 1327654866_thumb.pn

post-21336-098426900 1327654912_thumb.pn

في ملف الهيدر

header.inc

<!DOCTYPE HTML>
<html><head>
    	<meta http-equiv="content-type" content="text/html; charset=UTF-8">
    	<title>Urorbit FW - Demos </title>
    	[var:"css_compression"end var]

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

في ملف الفوتر نكتب

footer.inc

[var:"js_compression"end var]
</body>
</html>

في السطر الأول شيفره لتظمين ملفات الجافاسكريبت

نبدأ الآن بكتابة تطبيقنا الصغير

أولا تظمين ملف الهيدر والفوتر في القالب الرئيسي

[include:"header.inc"end include]

هنا الكود الخاص بنا html 
[include:"footer.inc"end include]

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

[include:"header.inc"end include]
<form method="post">
	<label for="n1">الرقم الأول</label>
	<input id="n1" name="n1"/>

	<label for="n2">الرقم الثاني </label>
	<input id="n2" name="n2"/>

	<br/>

	<button name="plus" type="submit">+</button>
</form>
[include:"footer.inc"end include]

سنكتفي مبدئيا بعمليه الجمع ... بعد حفظ العمل نذهب إلى موقعنا لنرى التالي

موقعنا على هذا الرابط

http://localhost/urorbit_fw/

post-21336-084532100 1327655547_thumb.pn

الآن سنقوم ببرمجه عمليه الجمع ..كود بي أتش بي , وأكواد البي أتش بي في هذا الإطار يتم وضعها في مجلد الإضافات داخل أي مجلد نريد , نذهب إلى مجلد الإضافات وننشئ مجلد بإسم mywork وداخل هذا المجلد ننشئ ملف بإسم index.php وأي كود سيتم وضعه داخل هذا الملف سيتم تنفيذه فورا

post-21336-014676100 1327655780_thumb.pn

وسم إغلاق شيفرة بي أتش بي يفضل حذفه (الذي عليه دائره) لن يتأثر الكود إذا تركت وسم بي أتش بي دون إغلاق

الآن نحذف التعليقات ونكتب الكود الخاص بنا , سنسأل هل تم إرسال الرقم الأول والرقم الثاني ؟ الرقم الأول إسمه n1 والثاني n2

لن نضطر لكتابه إسم المتغير كما يلي :

$_GET[n1] or $_POST[n1]

فإطار العمل يقوم بفلترة جميع المتغيرات القادمه وماعليك سوى إستدعاء المتغير بالطريقه البسيطه

 $n1

إذن الكود يصبح

<?php
if($n1 && $n2){
	$result_mywork="n1=$n1 and n2=$n2";
}

هنا سألنا إذا هناك قيمه في الرقم الأول وقيمة في الرقم الثاني إذن قم بجعل المتغير نتائج عملي (result_mywork) تساوي الرقم الاول والرقم الثاني , لاحظ لم نقم بطباعه الناتج فورا لأن هذا يعني عدم فصل اللغات والنتيجه ستكون مشاكل في التصميم .. إذا كيف يتم طباعه النتيجه؟

هناك شيفره خاصه بالإطار تقوم بطباعه اي متغير في مكان وجود هذه الشيفره وهي كالتالي

[var:"result_mywork"end var]

لاحظ كتبنا المتغير بدون علامة الدولار $

الآن تصبح صفحة القالب الرئيسي كما يلي

[include:"header.inc"end include]
<form method="post">
	<label for="n1">الرقم الأول</label>
	<input id="n1" name="n1"/>

	<label for="n2">الرقم الثاني </label>
	<input id="n2" name="n2"/>

	<br/>

	<button name="plus" type="submit">+</button>
</form>

[var:"result_mywork"end var]
[include:"footer.inc"end include]

نذهب إلى موقعنا ونرى النتائج بعد إضافه رقمين

post-21336-099983300 1327656492_thumb.pn

الآن نقوم بالرجوع إلى كود php ونسأل سؤال آخر ... على ماذا تم الضغط + أو - !!

ليصبح الكود كما يلي

<?php
if($n1 && $n2){
	if(isset($plus))
	$result_mywork="$n1 plus $n2 = ".($n1+$n2);
}

بالتوفيق للجميع وإلى اللقاء في الدرس القادم بإذن الله

بار الله فيك اخي بسام

#3
اقتباس
بار الله فيك اخي بسام

جزاك الله خير ... أتمنى أن يكون الشرح واضح والأمور بينه

CMS Sfhati , Website Generator


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


 


small-logo.png

#4

جزاك الله خيراً على هذا الشرح الرائع لكن كيف يتم برمجة إطار العمل

Nas2009.gif
#5
اقتباس
جزاك الله خيراً على هذا الشرح الرائع لكن كيف يتم برمجة إطار العمل

إطار العمل مثله مثل أي سكريبت آخر والهدف منه تسهيل العمل والتوجه نحو الأفضل , كيف يتم برمجته ... ربما تحتاج إلى خبره طويله في مجال العمل لكي تتمكن من برمجه إطار عمل وذلك لأنك لن تبرمج إطار عمل إلا في حاله وصولك إلى معرفه عميقه في شتى الخدع والمتطلبات للعمل وتكون لديك رؤيا في تحديد العمل وتسييره نحو الأفضل من خلال سكريبت تقوم بعمله ويدعى إطار عمل :)

CMS Sfhati , Website Generator


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


 


small-logo.png

#6

بارك الله فيك استاذنا بسام , درس رائع متابع للدورة ....

M.B.O

Mohamed Bin Othman

إبن المكلا

يابني البشر ماذا فعلتم بالبشر !!

إسـألـنـي

#7

مواضيعك جميله بس متى بدك تكمللنا الحصص؟

1
#8

@M.B.O : شرفت الدوره أخي محمد

@سنوبي0 : قريبا جدا بإذن الله :)

CMS Sfhati , Website Generator


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


 


small-logo.png

#9

تعجبني الطريقة العامه للبرمجة فمن المنظر تظهر انها سهله ولكن لدي سؤال محير !

مثلا عندنا في asp.net لا نحتاج الى ان نبرمج الازرار والليبلات وغيرها ممكن ندرجها بشكل سريع ونبدء العمل فهل هذا ممكن في php ايضا !! اعتقد انه ممكن من خلال الدريم ويفر ( بالطبع هذا مجرد تخمين لا اكثر واتمنى الاجابه منك يا استاذ ) واذا كان ممكن فلماذا لا تستخدم الدريم ويفر بدل من النت بيز

تم تعديل هذه المشاركة بواسطة (HARD) في 31 مارس 2012 في 10:40

#10
اقتباس
تعجبني الطريقة العامه للبرمجة فمن المنظر تظهر انها سهله ولكن لدي سؤال محير !

مثلا عندنا في asp.net لا نحتاج الى ان نبرمج الازرار والليبلات وغيرها ممكن ندرجها بشكل سريع ونبدء العمل فهل هذا ممكن في php ايضا !! اعتقد انه ممكن من خلال الدريم ويفر ( بالطبع هذا مجرد تخمين لا اكثر واتمنى الاجابه منك يا استاذ ) واذا كان ممكن فلماذا لا تستخدم الدريم ويفر بدل من النت بيز

في دوت نت الوضع مختلف نوعا ما .. مايكروسوفت توفر الكثير من المكتبات الجاهزه للتعامل مع الأزرار وغيرها ولكن هذا يأتي على حساب الإبداع بالنسبه لك كمبرمج لأن عمليه إستخدام جيكويري ستكون من خلال خطوات بخلاف بي أتش بي

لم يعد السحب والإفلات أمر مريح كما كان في السابق ... كتابه الأكواد تجعل الأمر أسهل منذ البدايه

شرح بسيط :

لدينا css , javascript , html , images

هذه هي مكونات معظم صفحات الإنترنت لنستثني الصور ,,, جميع ماسبق مرتبط فيما بينه من خلال

id

class

tag

property

value

عندما أريد أن أصل إلى حقل معين في نموذج ما يمكن أن أصل إليه من خلال قيمته أو أي خاصيه أريدها مثل

key , for , any , dot

فأكتب

        <input name="f" key="F1" any="my input" class="inp" />
        <style>
            .inp{
              width: 50px;
            }
        </style>
        <script>
            $(function(){
                var a= $('.inp').val();
                var b= $("input").val();
            });
        </script>

CMS Sfhati , Website Generator


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


 


small-logo.png

#11

جزاك الله خير يا غالي على الرد الان وضحت الصورة )) ، سأخوض التجربة ان شاء الله تعالى ، ومتابع بشدة الدورة

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