[x]

"وقـل اعمـلوا فسـيرى الله عـملكم ورسـوله والمؤمنـون"


..لمحة عن كليات جامعة دمشق و فروعها... شاركنا تجربتك وكلمنا عن اختصاصك



المحـاضـرات
برنـامج الـدوام
برنـامج الامتحــان
النتـائج الامتحـانيـة
أسـئلة دورات
أفكـار ومشــاريع
حلقــات بحـث
مشــاريع تخـرّج
"وقـل اعمـلوا فسـيرى الله عـملكم ورسـوله والمؤمنـون"
كلية الهندسة المعلوماتية

مواضيع مميزة..



  ملتقى طلاب جامعة دمشق --> كلية الهندسة المعلوماتية --> الأقسام العامة كلية الهندسة المعلوماتية --> برمجة وتصميم الويب
    (( دورة php )) الدرس الخامس... ملحق بالمتغيرات والتعليمات الشرطية والتكرارية (switch) (while)
عنوان البريد :  
كلمة المرور :  
                    تسجيل جـديد


صفحة 1 من 3  1 2 3->

.(( دورة php )) الدرس الخامس... ملحق بالمتغيرات والتعليمات الشرطية والتكرارية (switch) (while)


Y4$$3R N3T

عضــو ماسـي






مسجل منذ: 12-03-2006
عدد المشاركات: 4989
تقييمات العضو: 621
المتابعون: 119

غير موجود
اشــترك بالتحديثات
رسالة مستعجلة

(( دورة php )) الدرس الخامس... ملحق بالمتغيرات والتعليمات الشرطية والتكرارية (switch) (while)

01-09-2009 10:32 AM




نبدأ درسنا اليوم
بإضافة بسيطة عن المتغيرات كنا قد تجاوزناها...
وهي : كيفية التحكم بقيم المتغيرات من خارج الكود البرمجي..!

وهناك طريقتان..
أولاهما عن طريق النماذج Forms وسنتكلم عنها بالتفصيل بعد دروس قليلة
والثانية عن طريق الرابط حيث تقوم بتغيير أشياء بسيطة فيه ليعطيك نتائج جديدة

مثلاً في درسنا السابق عن for
وضعنا مثالاً عن استثناء سطر مثلاً أو عمود محدد.. وقد قمنا بتحديده من داخل الكود البرمجي

[php][/php]


فما رأيكم لو أردنا التحكم بهذا العمود من الرابط؟؟

[php][/php]


لقد استبدلنا القيم المستثناة بمتغيرات... ولكن هذه المتغيرات ليس لها قيمة
قيمها ستأخذها من الرابط!!... كيف؟؟... يجب أن يكون الرابط بهذا الشكل:
http://localhost/lesson5/test1.php?line1=3&line2=7
حيث 3 هي القيمة المفترضة لرقم السطر المستثنى الأول و7 للثاني...

لكن هناك مشكلة ستحدث اذا ما طلبنا الرابط بدون هذه المتغيرات فيه... حيث سيعتبر قيمها تساوي الفراغ ولن يستثني شيئاً... لذلك من الممكن أن نضيف على المثال شرطاً هو كالتالي:
[php][/php]

مامعنى الشرط السابق...
معناه "إذا لم تجد أن للمتغير line1 قيمه فاعطه القيمة 3"
وهنا وفي البرمجة بشكل عام: اشارة التعجب تعني النفي أو العكس...
واستغنينا عن قوس التعليمات في if لأننا وضعنا فيها تعليمة واحدة... ومن الممكن وضعه وليس بالمشكلة...

وعكس هذا الشرط:
{ }(if($line1 وهنا يتحقق الشرط اذا كان هناك أي قيمة لهذا المتغير


أمر أخير بالنسبة للمتغيرات وهو بعض ملاحظات فيها
- نفصل بين أسماء المتغيرات وقيمها بإشارة =
- ونفصل بين كل متغير وقيمته مع متغير اخر بإشارة &
- ونفصل بين أول متغير واسم الصفحة البرمجية بإشارة ؟
- اذا طلبنا رابط صفحة وذكرنا في الرابط عدة متغيرات بقيم متعددة... وكان في الكود البرمجي عملية تخزين لقيمة ضمن أحد المتغيرات فإن المتغير سيحتفظ بقيمته الأخيرة... وينفذ على أساسها... لذلك وضعنا الشرط قبل تخزين القيم الافتراضية في حال لم يكن للمتغير قيمه من الرابط في مثالنا الأخير

- المثال الأخير كما هو الآن سيعمل بدون مشاكل على كمبيوترك الشخصي...
لكن ارفعه على الانترنت ستجد انك مهما غيّرت من القيم من الرابط سيبقى يأخذ القيم الافتراضية 3 و 7
وسبب ذلك نوع حماية مستخدم اسمه register_global لا يهمنا ... لكنه يرفض التعامل مع المتغيرات بأسمائها كما هي في الرابط...
وعند فحص قيمتها يخبرك بأنها فارغة
فالمتغيرات التي تريد أخذها من الرابط للتعامل معها عليك أن تأخذها بالشكل

الكود
$_GET['line1']
$_GET['line2']


ولكي يصبح مثالنا صحيحاً... نقوم فيه بالتعديل :

[php][/php]


وطبعاً الرابط لا يتغير ويبقى كما هو..
http://localhost/lesson5/test1.php?line1=3&line2=7
الآن .. أصبح يعمل على كمبيوترك الشخصي وعلى الانترنت بشكل سليم...







ملتقى طلاب جامعة دمشق




أنت غير مسجل لدينا.. يمكنك التسجيل الآن.

مشاركة : 2


Y4$$3R N3T

عضــو ماسـي






مسجل منذ: 12-03-2006
عدد المشاركات: 4989
تقييمات العضو: 621
المتابعون: 119

غير موجود
اشــترك بالتحديثات
رسالة مستعجلة

رد مشاركة : (( دورة php )) الدرس الخامس... ملحق بالمتغيرات والتعليمات الشرطية والتكرارية (switch) (while)

01-09-2009 10:39 AM




تكلمنا عن التعليمة الشرطية if .. elseif .. else
وأنها تأخذ عدداً غير محدود من elseif

لكن في هذه الدالة مشكلة... وهي أنك مثلاً إذا وضعت فيها 50 قسم من elseif
وكانت القيم المعطاة لا تتحقق الا بالقسم الأخير فالبرنامج سينجبر أن يفحص الشروط السابقة كلها ليجدها غير محققة ليصل إلى القسم الأخير المحقق وينفذ تعليماته
وهذا قد يتطلب وقتاً... غير محبذ في البرمجة!

لذلك يمكنك الاستعاضة عن هذه الدالة الشرطية بالدالة switch التي تساعدك اذا كنت تفحص قيمة متغير واحد

ولها الشكل الآتي
[php][/php]

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

[php][/php]

- تعليمة break هنا من أصل تعليمة switch ولا يمكن الاستغناء عنها..
- يمكن الاستغناء عن القسم الأخير صاحب القيمة default ولا مشكلة..
- وطبعاً رأينا التمييز في المعاملة مابين القيم النصية والقيم الرقمية





ملتقى طلاب جامعة دمشق




أنت غير مسجل لدينا.. يمكنك التسجيل الآن.

مشاركة : 3


Y4$$3R N3T

عضــو ماسـي






مسجل منذ: 12-03-2006
عدد المشاركات: 4989
تقييمات العضو: 621
المتابعون: 119

غير موجود
اشــترك بالتحديثات
رسالة مستعجلة

رد مشاركة : (( دورة php )) الدرس الخامس... ملحق بالمتغيرات والتعليمات الشرطية والتكرارية (switch) (while)

01-09-2009 11:00 AM




وجدنا في for أنه علينا تحديد القيمة الابتدائية والنهائية وطبيعة التكرار هل هو في زيادة أو في نقصان لتتم عملية التكرار...
واستخدمنا على سبيل المثال...

[php][/php]


قد يقول البعض إن for معقدة!! ولو أنها بسيطة... وهناك دالة تقوم بعملها نفسه بكل سهولة إنها while

نتكلم عن شكلها اولاً
[php][/php]

وكمثال عليها إذا ما أحببنا استخدامها بدل for في المثال السابق

[php][/php]

طبعاً هنا في قوس التعليمات يمكنك وضع أي شيء تريده
ووضعنا أن فيه المتغير يأخذ قيمة متزايدة .. وإلا ستكون while غير منتهية

ما أهمية استخدام while
أحيانا تواجهنا مواقف قد لانعرف فيها القيمة النهائية التي نريد الوصول إليها او طبيعة التكرار وقد يكون التكرار عشوائياً لمجرد الوصول إلى شرط معين...
وهذا ما لا تؤمنه تعليمة for .!

مثلاً أريد تكرار مجموعة تعليمات معينة لمدة ثانيتين من الزمن (ينصح بعدم التجربة)!
[php][/php]

حيث أن الدالة time() لمعرفة الزمن الحالي بالثانية وهي عدد الثواني منذ عام 1970 وحتى الآن وكل ثانية تزداد بمقدار واحد
والشرط كان : اذا كان الوقت الذي قمنا بتخزينه لحظة البدء بعد اضافة ثانيتين عليه أكبر من الوقت الحالي قم يتنفيذ مابين قوسي التعليمات... وبمجرد مرور ثانيتين سيصبح اصغر وستنتهي تعليمة while

من الممكن أن نستخدم تعليمة break ضمن while وتعني اقطع التنفيذ واخرج من while
مثال:
[php][/php]
وهنا سيقطع التنفيذ عند بعد أن تصبح قيمة المتغير i عشرة ويكمل التعليمات الموجودة خارج while


ملاحظة على الهامش..
[php][/php]


الوظيفة...
نريد الوظيفة السابقة الخاصة بـ for باستخدام while... بعد تحويل جميع القيم فيها إلى متغيرات يمكننا تعديل قيمها عن طريق الرابط...
وهذه هي الوظيفة السابقة ::
[php][/php]


وبالنسبة للوظايف اتبحبحوا بالأسطر والفراغات... يعني اللوح أد الحيط 



الموضوع مغلق ليوم الغد... مثل هذا التوقيت... ليأخذ الجميع الوقت في الحل





ملتقى طلاب جامعة دمشق




أنت غير مسجل لدينا.. يمكنك التسجيل الآن.

مشاركة : 4


mmmohamad

جامعـي اســتثنائي

ليش خايفين الله معنا




مسجل منذ: 24-05-2009
عدد المشاركات: 632
تقييمات العضو: 8
المتابعون: 23

غير موجود
اشــترك بالتحديثات
رسالة مستعجلة

رد مشاركة : (( دورة php )) الدرس الخامس... ملحق بالمتغيرات والتعليمات الشرطية والتكرارية (switch) (while)

02-09-2009 08:56 PM





السلام عليكم
هاي الوظيفة بس ما كانت تزبط معي ...  نرجوا من سماحتكم التصحيح

وجزاكم الله خيراً


[php][/php]





ملتقى طلاب جامعة دمشق




أنت غير مسجل لدينا.. يمكنك التسجيل الآن.

مشاركة : 5


sufia

جامعـي اســتثنائي

ضع هدفك على القمر فإذا أخطأته فسوف تستقرعلى النجوم




مسجل منذ: 15-05-2008
عدد المشاركات: 953
تقييمات العضو: 0
المتابعون: 21

غير موجود
اشــترك بالتحديثات
رسالة مستعجلة

رد مشاركة : (( دورة php )) الدرس الخامس... ملحق بالمتغيرات والتعليمات الشرطية والتكرارية (switch) (while)

02-09-2009 09:09 PM




ان شالله يكون هالحل هو الحل المطلوب   


[php]



[/php]

             





ملتقى طلاب جامعة دمشق




أنت غير مسجل لدينا.. يمكنك التسجيل الآن.

مشاركة : 6


Y4$$3R N3T

عضــو ماسـي






مسجل منذ: 12-03-2006
عدد المشاركات: 4989
تقييمات العضو: 621
المتابعون: 119

غير موجود
اشــترك بالتحديثات
رسالة مستعجلة

رد مشاركة : (( دورة php )) الدرس الخامس... ملحق بالمتغيرات والتعليمات الشرطية والتكرارية (switch) (while)

03-09-2009 12:03 PM




أهلاً أخي محمد...
بعد طووووووووووول انتظار !!!!!

ولا أرى الوظيفة بهذه الصعوبة... لكن لرمضان ظروف خاصة وفي هذا نتساهل
وحتى بعض الدروس تتأخر...


المهم...
بالنسبة للمثال... صحيح!!
عدا أنه break تقطع تنفيذ تعليمة while بشكل نهائي وتخرج منها... لتكمل ما بعدها...
ولا يصح استخدامها في مثالنا هذا أبداً....

وثانياً أنت لم تعرّف عدد السطور او الاعمدة لنأخذها من الرابط ووضعتها كقيم ثابتة لا تتغير الا بشكل يدوي... وكذلك السطور أو الأعمدة المستثناة!!!

ولا تنسى أن تعطينا الرابط الذي يصلح للتنفيذ...





ملتقى طلاب جامعة دمشق




أنت غير مسجل لدينا.. يمكنك التسجيل الآن.

مشاركة : 7


Y4$$3R N3T

عضــو ماسـي






مسجل منذ: 12-03-2006
عدد المشاركات: 4989
تقييمات العضو: 621
المتابعون: 119

غير موجود
اشــترك بالتحديثات
رسالة مستعجلة

رد مشاركة : (( دورة php )) الدرس الخامس... ملحق بالمتغيرات والتعليمات الشرطية والتكرارية (switch) (while)

03-09-2009 12:06 PM




ممتاز هو الحل أخت sufia
لكن نسيت أن تزودينا بالرابط ليتم تشغيل البرمجية!!!
وكذلك عند تشغيلها بدون ذكر قيم المتغيرات في الرابط يعطينا صفحة بيضاء....
فما رايك بتعليمة if تخبرنا أنه علينا أن نكتب قيم المتغيرات في الرابط اذا لم تكن موجودة؟!...

بانتظار البقية...
يبدو أنه علينا تفعيل قانون العقوبات...





ملتقى طلاب جامعة دمشق




أنت غير مسجل لدينا.. يمكنك التسجيل الآن.

مشاركة : 8


*أبو عبيدة*

عضــو فضـي

قل إن صلاتي و نسكي و محياي و مماتي لله رب العالمين




مسجل منذ: 08-03-2008
عدد المشاركات: 1082
تقييمات العضو: 128
المتابعون: 151

غير موجود
اشــترك بالتحديثات
رسالة مستعجلة

رد مشاركة : (( دورة php )) الدرس الخامس... ملحق بالمتغيرات والتعليمات الشرطية والتكرارية (switch) (while)

04-09-2009 01:35 PM




السلام عليكم ...


اقتباس
- المثال الأخير كما هو الآن سيعمل بدون مشاكل على كمبيوترك الشخصي...
لكن ارفعه على الانترنت ستجد انك مهما غيّرت من القيم من الرابط سيبقى يأخذ القيم الافتراضية 3 و 7
وسبب ذلك نوع حماية مستخدم اسمه register_global لا يهمنا ... لكنه يرفض التعامل مع المتغيرات بأسمائها كما هي في الرابط...
وعند فحص قيمتها يخبرك بأنها فارغة


كيف سنرفعها على الإنترنت .. هل سنقوم برفع ملف ال php و من ثم طلبه عن طريق رابط الرفع ؟؟


سؤال آخر .. بالنسبة لهذا الكود :



[php][/php]


ماذا لو لم نعط لـــ i قيمة إبتدائية ؟؟ هل سيعتبرها المعالج صفرًا و يزيد عليها ؟؟ أم أنه سيصرح بوجود أخطاء ؟؟ بالتجربة فقد اعتبر أن لــ i قيمة صفرية .. علمًا بان المتحول قد يأخذ قيم إسمية و ليس رقمية فقط !! 

و بالنسبة للوظيفة .. فهذا هو الحل :

[php][/php]

تقبل تحيتي





ملتقى طلاب جامعة دمشق




أنت غير مسجل لدينا.. يمكنك التسجيل الآن.

مشاركة : 9


Y4$$3R N3T

عضــو ماسـي






مسجل منذ: 12-03-2006
عدد المشاركات: 4989
تقييمات العضو: 621
المتابعون: 119

غير موجود
اشــترك بالتحديثات
رسالة مستعجلة

رد مشاركة : (( دورة php )) الدرس الخامس... ملحق بالمتغيرات والتعليمات الشرطية والتكرارية (switch) (while)

04-09-2009 02:25 PM




مالي أرى بعض التعفيس أو التقاعس عن الوظائف؟
!!!!!!!!!!!!!

هل نأجل إكمال الدورة الى مابعد رمضان والعيد.؟





ملتقى طلاب جامعة دمشق




أنت غير مسجل لدينا.. يمكنك التسجيل الآن.

مشاركة : 10


A-Alhamwi

جامعـي مبـدعـ





مسجل منذ: 08-02-2008
عدد المشاركات: 311
تقييمات العضو: 0
المتابعون: 2

غير موجود
اشــترك بالتحديثات
رسالة مستعجلة

رد مشاركة : (( دورة php )) الدرس الخامس... ملحق بالمتغيرات والتعليمات الشرطية والتكرارية (switch) (while)

04-09-2009 03:02 PM




صدقا إني حليت الوظيفة من فترة
بس ما صحلي أدخل عالنت
آسف على التأخير أخي ياسر

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

بالنسبة لحل الوظيفة

[php][/php]

شكرا أخي ياسر على الجهد الواضح في الدروس  





ملتقى طلاب جامعة دمشق




أنت غير مسجل لدينا.. يمكنك التسجيل الآن.
صفحة 1 من 3  1 2 3->
 








ملتقى طلاب الجامعة... منتدى غير رسمي يهتم بطلاب جامعة دمشق وبهم يرتقي...
جميع الأفكار والآراء المطروحة في هذا الموقع تعبر عن كتّابها فقط مما يعفي الإدارة من أية مسؤولية
WwW.Jamaa.Net
MADE IN SYRIA - Developed By: ShababSy.com
أحد مشاريع Shabab Sy
الإتصال بنا - الصفحة الرئيسية - بداية الصفحة