إنضمامك إلي منتديات استراحات زايد يحقق لك معرفة كل ماهو جديد في عالم الانترنت ...

انضم الينا
استراحات زايد الصفحة الرئيسية


إضافة رد
 
LinkBack أدوات الموضوع انواع عرض الموضوع
  #1  
قديم 09-09-2009, 05:00 AM
عضو ماسي
بيانات محروم.كوم
 رقم العضوية : 503
 تاريخ التسجيل : Dec 2007
الجنس : female
علم الدوله :
 المشاركات : 2,100,611
عدد الـنقاط :3341
 تقييم المستوى : 2139

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

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

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

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









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









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

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







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

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


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

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

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


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









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


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

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

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

ولها الشكل الآتي







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








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

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









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

نتكلم عن شكلها اولاً







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








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

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

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







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

من الممكن أن نستخدم تعليمة break ضمن while وتعني اقطع التنفيذ واخرج من while
مثال:







وهنا سيقطع التنفيذ عند بعد أن تصبح قيمة المتغير i عشرة ويكمل التعليمات الموجودة خارج while


ملاحظة على الهامش..








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








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



-=-=-=-

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

http://it.jamaa.cc/art247572.html

إلى اللقاء موعدنا في الدرس التالي
وهو الدرس السادس
تحيــاتي
__DEFINE_LIKE_SHARE__
رد مع اقتباس
إضافة رد

مواقع النشر (المفضلة)


تعليمات المشاركة
لا تستطيع إضافة مواضيع جديدة
لا تستطيع الرد على المواضيع
لا تستطيع إرفاق ملفات
لا تستطيع تعديل مشاركاتك

BB code is متاحة
كود [IMG] متاحة
كود HTML معطلة
Trackbacks are متاحة
Pingbacks are متاحة
Refbacks are متاحة


المواضيع المتشابهه
الموضوع كاتب الموضوع المنتدى مشاركات آخر مشاركة
[برمجة الهاكات][ الدرس الخامس ] شرح لأهم المتغيرات والدوال + كيفية إستعمالها محروم.كوم منتدى أخبار المواقع والمنتديات العربية والأجنبية 0 10-25-2009 03:20 AM
الدرس الثالث من دورة Y4$$3R N3T - التعليمات الشرطية if .. else محروم.كوم منتدى أخبار المواقع والمنتديات العربية والأجنبية 0 09-09-2009 05:20 AM
الدرس الثاني من دورة y4$$3r n3t - التخزين أوامر الطباعة المتغيرات والعمليات الأولية محروم.كوم منتدى أخبار المواقع والمنتديات العربية والأجنبية 0 09-09-2009 05:20 AM
الدرس الخامس من دورة y4$$3r n3t - المتغيرات والتعليمات الشرطية والتكرارية محروم.كوم منتدى أخبار المواقع والمنتديات العربية والأجنبية 0 09-09-2009 05:10 AM
الدرس الثالث من دورة Y4$$3R N3T - التعليمات الشرطية if .. else محروم.كوم منتدى أخبار المواقع والمنتديات العربية والأجنبية 0 09-09-2009 05:10 AM


الساعة الآن 11:57 PM


Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO 3.5.2 TranZ By Almuhajir

RSS RSS 2.0 XML MAP HTML