• php
  • 1760
  • 20/3/2008
  • تعلمنا في السابق كيف نتحكم في المتغيرات التي تأتي من النماذج, في الحقيقه هي 3 انواع, وتطرقنا الى نوع واحد , وهو البسيط. حيث انك تكتب في الصفحه التي يذهب اليها المتغير اسم المتغير فقط, لكن اليوم سوف نتعلم طريقتان اخرى , غير الاولى, وهي عباره عن مصفوفات حرفيه, نستخدمها للتحكم في المتغيرات, في الحقيقه لا يوجد لهذه الطرق اسماء ولكن شاهدت كتابا يقوم بإعطاء اسماء لها مبسطه ومميزه متطلبات قبل البدأ : مراجعة جميع ما سبق تعلمه في لغة PHP اهداف الدرس: طرق استخدام المتغيرات من النماذج
    النوع المخفي ( HIDDEN ) من انوع النماذج
    الداله isset
    الداله unset
    تطبيق عملي -------------------------------------------------------------------------------- طرق استخدام المتغيرات من النماذج : تعلمنا في السابق كيف نتحكم في المتغيرات التي تأتي من النماذج, في الحقيقه هي 3 انواع, وتطرقنا الى نوع واحد , وهو البسيط. حيث انك تكتب في الصفحه التي يذهب اليها المتغير اسم المتغير فقط, لكن اليوم سوف نتعلم طريقتان اخرى , غير الاولى, وهي عباره عن مصفوفات حرفيه, نستخدمها للتحكم في المتغيرات, في الحقيقه لا يوجد لهذه الطرق اسماء ولكن شاهدت كتابا يقوم بإعطاء اسماء لها مبسطه ومميزه, ( الاسلوب القصير ) , ( الاسلوب المتوسط ) , ( الاسلوب الطويل ), لنقم بمشاهدتها مع بعضنا البعض: نموذج ارسال بيانات:

    i

    الان في الصفحه التي نعرف بها البيانات , لدينا 3 طريق لاخذ هذا المتغير , لاحظ التالي:

    i

    ماهو الفرق بين هذه الطرق الثلاث, واي واحد تقوم بإستخدامه ؟؟ عن نفسي انا شخصيا احبذ استخدام الاسلوب الطويل ويحبذ ان تقوم بالاقرار على استخدام اسلوب واحد من الثلاثه فقط, الفروقات بين الثلاث طرق هو التالي: الاسلوب القصير : اسهل اسلوب ولكن يقتضي ان يكون خيار register_global على الوضع on في اعدادات اللغه وكل هذا يعتمد على النسخه المستخدمه لديك, وهذا الاسلوب يجعلك تقوم بإخطاء تقوم بجعل موقع سهل الاختراق او غير امن الاسلوب المتوسط : هذا الخيار جيد ولكن لن يقوم بالعمل الا اذا كانت لغة PHP التي قمت بتنصيبها اعلى من 4.1.0 الاسلوب الطويل : هذا هو افضل اسلوب تقوم بإستخدامه وهو الخيار الوحيد المضمون ان يعمل على اي خادم ( server ) مهما كانت اعدادات اللغه, وهو اكثرها حمايه وامانا, ولكن يحتمل ان يقوم صاحبو لغة PHP بإلغائه على المدى الطويل ملاحظه: اذا كانت طريقة ارسال النموذج POST فسوف تستخدم الامثله الموجوده بالاعلى , ولكن لو كانت الطريقه GET فقط قم بإستبدال العباره POST بالعباره GET الداله isset : تقوم هذه الداله , بالتحقق من ان متغير تم انشاءه ام لا , لاحظ المثال التالي:

    i

    الداله unset : تقوم هذه الداله بألغاء متغير موجود, لاحظ المثال التالي:

    i

    النوع HIDDEN من انوع النماذج : في بعض الاحيان نريد ان نقوم بإرسال بيانات مخفيه من صفحه الى اخرى, ولا يعلم بوجودها الزائر , مثلا عدد الدرجات التي حصل عليها الى الان, او عنوان ال IP وغيرها , فسوف نستخدم الطريقه التالي:

    i

    1 - اسم المتغير 2 - القيمه الموضوع بالمتغير تطبيق عملي : ماهو التطبيق العملي المناسب, احترت كثيرا في اختياره , ولهذا تأخر صدور الدرس يوما كاملا, ولاننا في دروس مبتدئه ولم نقم بالمرور على قواعد البيانات او حفظ الملفات, فسوف نقوم بعمل تطبيق عملي بسيط, وهو نموذج الاختبار الذي قمنا بعمله سابقا, ولكن سوف نقوم بوضع الاسئله واجاباتها في مصفوفه وانشاء السؤال بطريقه عشوائيه , افتح محرر الاكواد وقم بكتابة التالي:

    i


    i


    i


    i

    سأشرح لك التطبيق بطريقه سريعه, ولو تعمقت في طريقة الكتابه وقرأت التعليقات, سوف تتمكن من معرفة طريقة عمل البرنامج الصحيحه, لنبدأ. 1 - انشأنا عباره شرطيه, اذا كان المتغير انشأ من قبل فذلك يعني ان المستخدم قد نقر على زر الارسال في النموذج ( جاوب على السؤال ) وارسل المتغير, غير ذلك نقوم بعرض السؤال 2 - نضع 3 اسئله في مصفوفه حرفيه , ثم نقوم بترتيبها عشوائيا واختيار السؤال الاول واجابته في المصفوفه, ونضعه في مصفوفه اخرى رقميه بحيث ان الخانه 0 السؤال والخانة 1 الاجابه , واستخدمنا العباره break لاننا نريد اخذ السؤال الاول واجابته فقط, غير ذلك يخرج من دالة التكرار FOR 3 - انشأنا مدخلين من النوع المخفي ( hidden ) نضع بها السؤال المطروح والاجابه الصحيحه له 4 - اذا قام المستخدم بالاجابه نقوم بعبارت شرطيه التحقق ان المستخدم ادخل الاجابه وانها ارقام وغير ذلك
    --------------------------------------------------------------------------------
    سؤال على الدرس : 1 - توجد الف طريقه لعمل هذا التطبيق, حاول ان تقوم بعمله بطريقه اخرى بإستخدام المصفوفات ولكن بطريقه اسهل من هنا , ملاحظه ( قمت بإعطائك الطريقه الصعبه لكي تفهم المطلوب جيدا )
    الـــدرس الــقادم : سوف نتعرف في الدرس القادم على برمجة الكائنات في لغة PHP

    كن أول من يقيم الموضوع
    12345