الدرس الحادي عشر في لغة php

الدرس الحادي عشر في لغة php


النتائج 1 إلى 4 من 4

الموضوع: الدرس الحادي عشر في لغة php

  1. #1

    افتراضي الدرس الحادي عشر في لغة php

    بسم الله الرحمن الرحيم والصلاة والسلام على اشرف الانبياء والمرسلين ، سيتم التطرق في هذا الدرس بمشيئة الله الى ما يلي :


    - عبـاراة الـ if .
    - عبـاراة الـ else .
    - عبـاراة الـ elseif .

    - عبـاراة الـ switch .
    - حلقة التكرار while .
    - حلقة التكرار for .
    - حلقة التكرار do while .

    - عبـاراة الـ if :



    استخدام الـ if في كتابة السكربات شي أساسي ، وكما في لغات البرمجة الأخرى فإن الـ PHP تتبع نفس الاسلوب في كتابة الـ if ، فيمكن تحديد شرط معين مقترن بالـ if وبالتالي اذا كان الشرط صحيحاً ( true ) فسيتم تنفيذ الاسطر المحددة ، وبتفصيل أكثر يجب وضع الشرط بين قوسين ( ) ، ووضع الاسطر المطلوب تنفيذها بين العلامـات { } ، مع ملاحظة أنه يمكن التخلي عن العلامات { } في حال وجود سطر واحد فقط .

    فلنفترض وجود نموذج بريدي ( Mail Fourm ) ، يحتوي على الإسم والبريد والرسالة ، ونرغب في معرفة ما اذا كان المرسل قد ملأ جميع الحقول وبالتالي إرسـال الرسـالة ، او انه لم بفعل ذلك وبالتالي عرض رسـالة ( فضلاً قم بتعبئة البيـانات كاملة ) ، لعمل ذلك نحتاج معرفة أسمـاء المتغيرات في النموذج ، ولذلك فلنفترض أن المتغيرات كالتالي :
    ( الإسم name$ ) ، ( البريد email$ ) ، ( الرسـالة later$ ) ، ولعمل الشرط الأول ( اذا كان الإسم لم يُدخل فلن يتم ارسـال الرسـالة ) :

    كود PHP:
    <? 
     
    if ( $name == "" )  
     echo 
    "فضلاً قم بتعبئة البيـانات كاملة "
     
    ?>
    والمعنى أنه إذا كان المتغير name$ لا يحتوي على أي قيمة ( أي فراغ ) فسيتم تنفيذ السطر التالي وطبـاعة الجملة ، مع ملاحظة أن المطلوب تنفيذه هم سطر واحد فقط ولذلك لم نستخدم { } ، بل في حالة وجود أكثر من سطر يجب استخدامها كالتالي :
    كود PHP:

      <? 
    if ( $name == "" )  { 
    echo 
    "فضلاً قم بتعبئة البيـانات كاملة<br> "
    echo 
    "لم تقم بإدخـال الإسم "

    ?>
    - عبـاراة الـ else :
    هذه العبـارة تتيح امكانية وجود اجراء ثاني لعدم تحقق الشرط ، ففي مثالنا السابق كان الاجراء طباعة الجملة اذا تحقق الشرط ، ولكن في حالة عدم تحقق الشرط فلن يكون هناك اجراء لتنفيذه ، بل ان الاجراء سيتم تنفيذه اذا تحقق الشرط ومن ثم سيتم اكمال بقية الاسطر ، وفي حالة مثل هذه الحالة يتم استخدام الـ else لوضع اجراء آخر في حالة عدم تحقق الشرط ، وبالمثال يتضح المقال :



    كود PHP:
    <? 
    if ( $name == "" )  { 
    echo 
    "فضلاً قم بتعبئة البيـانات كاملة"

    else  

    echo 
    "تم ارسـال الرسـالة ، شكرا لك"

    ?>
    في هذا المثال سيتم طباعة الجملة (فضلاً قم بتعبئة البيـانات كاملة ) اذا تحقق الشرط أن المتغير name$ لا يحتوي على أي قيمة ، وسيتم طباعة الجملة (تم ارسـال الرسـالة ، شكرا لك ) في حالة عدم تحقق الشرط ، أي في حالة وجود قيمة في المتغير name$ ، مع ملاحظة أن هذا المثال يحتوي على شرطين وليس شرط واحد ، فالظاهر هو شرط واحد ( "" == name$ ) ولكن العبـارة else تعتبر شرطاً بحد ذاتها ولو لم يكن هذا الشرط مكتوباً ، وكما هو واضح فمعنى هذا الشرط هو ( إذا كان غير ذلك ) فقم بطباعة الجملة .

    يمكن أن يكون الشرح غير واضح تماماً ، ولكن أهمية فهم الطريقة ستتضح في الأسطر القليلة القادمة .

    - عبـاراة الـ elseif :



    في العبارة السابقة ذكرنا أنه يوجد شرطين واجرائين ، أحد هذين الشرطين غير مكتوب بل هو مفهوم من ادراج العبـارة else ، وفي حالات كثيرة لا يكفينا مجرد شرطين واجرائين لاتمام بعض السكربات المعقدة ، فلذلك يمكن نستخدم العبـارة elseif مع الـ if لعمل مثل هذه السكربات ، فلو افترضنا أن لدينا عداد لزوار الموقع ونريد اظاهر العداد بحيث يتم قراءته بشكل جيد ، اي بمعني اخر اذا كان عدد الزوار ( 1 ) فسيتم طباعة الجملة ( عدد الزوار : زائر واحد فقط ) واذا كان ( 2 ) فسيتم طباعة الجملة ( عدد الزوار : زائرين ) ... وقس على ذلك ، فعندما يكون عدد الزوار ( 1 ) فسيتم عرض الجملة الأولى فقط وعندما يكون عدد الزوار ( 2 ) فسيتم عرض الجملة الثانية فقط ، وهكذا لبقية الشروط .

    بافتراض أن المتغير ( counter$ ) هو عداد الزوار ، فالمثال التالي يبين ما تم شرحه سابقاً :



    كود PHP:
    <? 
    if ( $counter == )  { 
    echo 
    " عدد الزوار : زائر واحد فقط "

    elseif ( 
    $counter == )  { 
    echo 
    " عدد الزوار : زائرين "

    elseif ( 
    $counter >= && $counter <= 10 )  { 
    echo 
    "عدد الزوار : $counter زوار"

    else { 
    echo 
    "عدد الزوار : $counter زائر"

    ?>
    كما هو واضح في المثـال السابق سيتم ما يلي :

    الشرط : العداد يساوي 1
    الإجراء : طبـاعة ( عدد الزوار : زائر واحد فقط )
    الشرط : العداد يساوي 2
    الإجراء : طبـاعة ( عدد الزوار : زائرين )
    الشرط : العداد أكبر أو يساوي 3 و اصغر أو يسـاوي 10
    الإجراء : طبـاعة ( عدد الزوار : ( العداد ) زوار )
    الشرط : العداد لا يحقق أي من الشروط
    الإجراء : طبـاعة ( عدد الزوار : ( العداد ) زائر )

    ملاحظة بسيطة فقط ، وهي على العلامة && التي تعني ( و ) ، وهي من علامات الجمع بين جملتين ، فيجب أن تكون الجملتين صحيحتين لتحقق الشرط .

    - عبـاراة الـ switch :
    هذه العبـارة قريبة جداً من العبـارة if ، ولكن يمكن استخدام اكثر من شرطرين باسلوب أخر ، غير انه يجب اسناد قيمة معينة للـ case وهي هنا بمثابة الشرط ، لكي يتم تنفيذ الاجراء المحدد لذلك الشرط أو الـ case ، وفي النهاية الأمر يعود الى المصمم وايهما يفضل ، وكما في المثال السابق يمكن كتابة مثال بالـ switch بنفس الطريقة ، والمشكلة الوحيدة هي كما قلنا أنه يجب اسناد قيمة معينة لكل case وبالتالي فإن الشرط الثالث من المثال السابق يجب تفريقه لكل قيمة من ( 3 الى 10 ) ، وهذه العميلة مجهدة لانه يجب كتابة سطر لكل قيمة كما يلي :

    القيمة : 3
    الـ case : 3
    الاجراء : طبـاعة ( عدد الزوار : ( العداد ) زوار )
    القيمة : 4
    الـ case : 4
    الاجراء : طبـاعة ( عدد الزوار : ( العداد ) زوار )
    القيمة : 5
    الـ case : 5
    الاجراء : طبـاعة ( عدد الزوار : ( العداد ) زوار )
    ......... الخ ...

    وفي المثال التالي ساتغاضى عن الشرط الثالث بكامله ، واذكر بقية الشروط والحالات لمجرد فهم طريقة عمل هذه العبـارة :
    كود PHP:

      <? 
    switch ($counter

    case 
    "1"
    echo 
    " عدد الزوار : زائر واحد فقط "
    break; 
    case 
    "2"
    echo 
    " عدد الزوار : زائرين "
    break; 
    default; 
    echo 
    "عدد الزوار : $counter زائر"
    break; 

    ?>
    استخدمنا في هذه المثال بعض الجمل وتعني ما يلي :
    Switch وتكتب في البداية مع ادراج اسم المتغير الذي سيتم عمل الشروط عليه .
    Case أي في حالة ( .... ) ويكتب بجانبها الشرط .
    Break وتعني ايقاف العملية والخروج من الشرط بعد تنفيذ أحد الإجراءات .
    Defaukt وهي تقابل العبـارة else أي بمعنى أنها لأي حالة لم يتم ذكرها في الشروط .

    - حلقة التكرار while :
    وهي ابسط حلقات التكرار على الأطلاق ، بحيث تاخذ شرط واحد فقط وتبني على تنفيذ ما بين علامات الشروط { } ، والفرق الوحيد بينها وبين الـ if هو انها ستقوم بتنفيذ الاجراءات طالما كان الشرط صحيحاً ، وهذا يعني احتمال تنفيذ الإجراء أكثر من مرة ، وهذ الدالة مفيدة في ادراج الحقول من الجدوال وغيرها من الاستخدامات ، بحيث لو افترضنا وجود جدول معين في قاعد بيانات ونريد ادراجه في صفحة PHP ، فسيكون من اهم خيارات الاستخدام هذه الدالة ، وباذن الله سيتم التطرق لقواعد البيانات في الدروس القادمة ، وفي الوقت الحالي ساذكر مثال بسيط على هذه الدالة لفهم طريقة استخدامها :

    كود PHP:

      <? 
    $total 
    10
    while ( 
    $total <= 50 )  

    echo 
    "العدد أقل من 50<br>"
    $total +=10

    ?>
    كير بسيط يمكن معرفة أن الجملة ( العدد أقل من 50 ) سيتم طباعتها 5 مرات ، لان حلقة التكرار while قامت بتنفيذ الاجراء طالما أن الشرط صحيح ، وفي المرة الأولى كان المتغير ( total$ ) يساوي ( 10 ) والشرط صحيح لان الـ ( total$ ) فعلاً اصغر أو يساوي الـ ( 50 ) ، فتم تنفيذ ما بين علامات الشرط ، ومن ذلك زيادة متغير المجموع ( total$ ) بقيمة ( 10 ) ومن ثم الرجوع والمقارنة من جديد ، وفي هذه الحالة صار المتغير ( total$ ) يساوي ( 20 ) وأيضـاً الشرط صحيح وبالتالي الدخول مرة أخرى وتنفيذ الأجراء .... وهكذا حتى يتم الوصول الى أن قيمة الـ ( total$ ) يساوي ( 50 ) وبالتالي الشرط صحيح ، ومن ثم تصبح قيمة الـ ( total$ ) تساوي ( 60 ) وفي هذه الحالة يتم ايقاف تنفيذ الاجراءات لأن الشرط غير صحيح .

    - حلقة التكرار for :
    يوجد طريقة أسهل للتعامل مع المثال السابق ، فاستخدام حلقة التكرار while كانت القيمة الابتدائية للمتغير ( total$ ) في سطر ، والشرط في سطر والزيـادة على المتغير في سطر أخر ، وبالتالي زيارة في عدد الأسطر عن ما يمكن استخدامه مع حلقة التكرار for ، فالمثـال التالي يبين طريقة أخرى لاستخدام مثـال الـ while بطريقة أسهل :

    كود PHP:

    <? 
    for ( $total 10;  $total <=50$total +=10 

    echo 
    "العدد أقل من 50<br>"

    ?>
    وللتوضيح فان تركيب الـ for هو على الشكل التالي :
    for ( القيمة الأفتراضية; الشـرط; مقدار الزيـادة; )
    الإجراء المطلوب تنفيذه [/PHP]- حلقة التكرار do while :
    وهي نسخة أخرى من الـ while والفرق الوحيد بينهما أن التأكد من الشرط وصحته من عدمها يتم بعد تنفيذ الاجراء وليس قبله كما في الـ while وكمثال عليها :



    كود PHP:
    <? 
    $total 
    10
    do  

    echo 
    "العدد أقل من 50<br>"
    $total +=10

    while ( 
    $total <= 50 ); 
    ?>

    وفي نهاية الدرس اتمنى الفائدة للجميع





    التعديل الأخير تم بواسطة Abdullhadi JC ; 05-14-2012 الساعة 09:54 PM

  2. #2

    افتراضي رد: الدرس الحادي عشر في لغة php

    الله يعطيك العآفيةة

    لآهنت <3




  3. #3

    افتراضي رد: الدرس الحادي عشر في لغة php

    كــوفيت و وفيت والشر ما يجيك
    تحياتي

  4. #4

    افتراضي رد: الدرس الحادي عشر في لغة php

    شكرااا لك اخي علئ الشرح الجميل بارك الله فيك اخي 10/10

المواضيع المتشابهه

  1. مشاركات: 53
    آخر مشاركة: 01-16-2020, 04:17 PM
  2. الدرس الحادي عشر: آمكانيات برنامج Poison بعد وصول الضحية
    بواسطة Resident Evil في المنتدى دورة إختراق الأجهزة
    مشاركات: 82
    آخر مشاركة: 05-25-2017, 04:07 PM
  3. الدرس الحادي عشر بيفروست - 2
    بواسطة حمودي خواجي في المنتدى قسم المواضيع المخالفة والمكررة
    مشاركات: 0
    آخر مشاركة: 11-22-2011, 10:36 PM
  4. الدرس الحادي عشر بيفروست - 2
    بواسطة حمودي خواجي في المنتدى أدوات اختراق الاجهزة والدمج والتشفير
    مشاركات: 0
    آخر مشاركة: 11-22-2011, 10:36 PM
  5. الدرس الحادي عشر والاخير - شرح سكربت vBspy
    بواسطة الشريف 515 في المنتدى منتدى الإختراق العام
    مشاركات: 1
    آخر مشاركة: 04-14-2011, 12:10 PM

المفضلات

أذونات المشاركة

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