Docstoc

05

Document Sample
05 Powered By Docstoc
					‫‪www.phpvillage.com‬‬               ‫‪KSA‬‬
‫.………………………………………………………………………………………………‬
                                                ‫األوامر الشرطية‬
‫لقد أخذنا في الدروس السابقة فكرة عن المتغيرات وكيفية تعامل الييانلات ملل الذملا ...فلي ذلذا اللدرس علذتعيف كيفيلة اللتككف‬
‫بالكود بمعذي تذفيذ عطر معين من الكود عذد حصول شرط معين وعذد عدم حصوله نتجاذ السطر ونتجه الى السطر الذي يييه‬
                                                                                                       ‫ا‬
                       ‫..ذذا يمذكذا تككمً أكير بالكود ويجعيذا نستخدم قرارات وتذفيذ أشياء ممتازة وبرامج رائعة بالـ‪. PHP‬‬

                                                                                     ‫دعذا نعطيك فكرة من حياتذا اليومية ....‬
                                                             ‫تقوم في الصياح وتريد أن تكضر فطورك الذي يتكون من التالي :‬

                                                                                                                            ‫عس‬
                                                                                                                           ‫جيذة‬
                                                                                                                            ‫خيز‬
                                                                                                                           ‫شاي‬

‫عتقوم بالذذاب إلى الثالجة ثف تقلوم باليكلع علن األشلياء التلي يتكلون مذ لا فطلورك ، فلذ ا للف تجلد ملا تريلد تسلتعد ليلذذاب إللى‬
     ‫المركز التجاري لشرائه حاجتك ، تذذب إلى المطيخ وتتأكد مره أخرى وتيكع عن المؤونة التي يكتاج ا الييت بشك عام .‬

                                                                  ‫- تيكع عن جيذة وإ ا لف تجدذا تذتق إلى الخطوة 3 .‬                 ‫1‬
                ‫- إ ا وجدت جيذة فذنك تيكع عن العس فذ ا وجدته تذتق الى الخطوة 4 ، وا ا لف تجده تذتق الى الخطوة 5 .‬                  ‫2‬
                                                              ‫- تقوم بكتابت ا في ورقة جانيية وتقوم باليكع عن العس .‬                ‫3‬
                                                                                ‫- تتج ز ليذذاب إلى المركز التجاري .‬                ‫4‬
                                                         ‫- تكتيه في ورقه جانييه ثف تتج ز ليذذاب إلى المركز التجاري .‬               ‫5‬

‫ذ الحظت انك كذت تقوم باليكع علن أشلياء معيذلة فلا ا وجلدت ا (‪ ) true‬قملت باليكلع علن التلي تيي لا وإ ا للف تجلدذا (‪)false‬‬
                                                                                    ‫تقوم بتسجيي ا في قائمة المشتريات لديك .‬

                                                                                        ‫القيف المذطقية والدوال الشرطية‬
                                                                                ‫ا‬
 ‫في الواقل لقد تكيمذا عن المتغيرات عابقً و كرنا بأن ذذاك متغيرات مذطقية (قيمت ا إما صكيح إم خطأ ) ولف نقف بشرح ا ، وذذا‬
                                                          ‫الدرس عيتولي شرح ا وإعطاء أمثية عيى كيفية التعام مع ا .‬



                                                                                                                  ‫العيارة ‪IF‬‬
     ‫( إ ا كان الشرط صكيكً ) ‪IF condition is true‬‬
                                ‫ا‬
     ‫{‬
     ‫(قف بتذفيذ ذذا الكود) ‪excute this code‬‬
     ‫}‬
                                                                                               ‫ا‬
‫إن الدالة ‪ IF‬معروفة تقرييً في جميل لغات اليرمجة ...حيع أن ا تقوم بعميية التكقق من شي معين وتذفيذ بعض األشلياء إ ا كلان‬
                                                   ‫الشرط صكيكا (‪ )true‬والقيام بتذفيذ أشياء أخرى أ ا لف يكن صكيكا ....‬
                                                     ‫ا‬
                                                   ‫عيقوم الـ‪ PHP‬بتذفيذ الكود التي بين { و } فقط ا ا كان الشرط صكيكً .‬
                                                                                                     ‫ا‬
                                                            ‫أما إ ا لف يكن صكيكً فسيقوم بتجاوزه وتذفيذ الكود الذي يييه .‬
                                      ‫ويمكذك أيضا أن تقوم بجعي ا بسطر واحد وال تستخدم األقواس ب تكتب األمر مياشرة :‬

    ‫;‪IF condition is true excute function‬‬

  ‫الحظ أنه البد من اعتخدام { و } إ ا كان الكود يتكون من عدة أعطر أما إ ا كان يتكون من عطر واحد فال داعي العتخدام ا .‬




                                                                     ‫85‬
‫‪www.phpvillage.com‬‬               ‫‪KSA‬‬
‫.………………………………………………………………………………………………‬


                                                                                                    ‫فالمثالين التاليين كي ما صكيكين‬
                                                                                                                          ‫مثال(1)‬
    ‫?<‬
    ‫01=‪$S‬‬
    ‫;11 ‪IF ($S=10) echo‬‬
    ‫>?‬
                                                                                                                            ‫مثال (2)‬
    ‫?<‬
    ‫01=‪$S‬‬
    ‫{)01=‪IF ($S‬‬
     ‫;11 ‪echo‬‬
    ‫}‬
    ‫>?‬

                                                                     ‫ا‬                                                   ‫ال‬
‫لذتخي ل مللث ً أن الجللو ممطللر وعللذقوم بذعطللاء المطللر متغيللرً ونسللميه ‪ rain‬ونقللوم بذعطللاء المظي لة اعللف متغيللر آخللر ونسللميه‬
                                                    ‫ا‬
     ‫‪ umbrella‬وعذقوم بذفتراض أن ذذاك أمر في الـ‪ php‬يسمي ‪ go out‬حسذً اآلن الكود الذي نريد أن نقوم بكتابته ذو :‬

    ‫‪If $rain = true‬‬
    ‫{‬
    ‫‪$umberrlla = true‬‬
    ‫}‬
    ‫;)(‪go out‬‬

                     ‫ا‬
‫فائدة ذذا الكود ذو أن تأمر الـ‪ PHP‬بكم المظيلة (‪ )$umberrlla=true‬معله إ ا كلان الجلو ممطلرً (‪)$rain=true‬وإ ا للف‬
                                                                                                       ‫ا‬
                                                   ‫يكن ممطرً ولف يتكقق الشرط فذنه عيخر إلى الذزذه بدون أي مظية .‬

                         ‫طيعا ليس ذذاك دالة تقوم بذلك إنما قمذا بذلك من أج التوضيح ليمستخدم ذيكيية عم الدالة بشك عام .‬


                                                                          ‫مقدمه الى القيف المذطقيه (‪)Boolean Values‬‬
‫القيف المذطقية ترمز إلى األشياء التي التكتم أكثر من احتمالين وذما إملا صلح وإملا خطلأ ، وذلي نلوج جديلد ملن القليف يلر التلي‬
                                                                                  ‫كذت نعرف ا عابقا (مث الرقميه والذصيه) .‬

                                                                                                                                  ‫مثال‬

    ‫?<‬
    ‫;‪$variable=true‬‬
    ‫;”‪echo “$variable‬‬
    ‫>?‬


                                              ‫ا‬
    ‫لو قمت برؤيه الذتييجة عتجد أنه يطيل الرقف واحد وذو قيملة المتغيلر إ ا كلان صلكيكً ، أملا أ ا كلان خطلأ أو يلر صلكيح فقيمتله‬
                                                                                                                   ‫عتكون( 0 ) .‬




                                                                        ‫95‬
‫‪www.phpvillage.com‬‬               ‫‪KSA‬‬
‫.………………………………………………………………………………………………‬




                                                                                                    ‫المعامالت المذطقية‬
                               ‫ا‬      ‫ا‬
‫لقد أخذنا المعامالت الرياضية فيما عيق بشيء ملن التفصلي (+،-،/،*) واالن علذأخذ شلياً جديلدً ملن المعلامالت وذلي المعلامالت‬
                            ‫المذطقية التي تساعدنا في صذاعة الشروط والتقييدات عيى شي معين وتعطيذا تككما أكير في الكود .‬

                                                                                                             ‫المعامالت : < و >‬
                                                                                                     ‫ا‬
    ‫من المفترض أن تكون متآلفً مل عالمتي األكير من واأل صلغر ملن فلي الرياضليات التلي تتعيم لا فلي المدرعلة مملا يجعل ف لف ذلذا‬
                                                                                                                    ‫ا‬
                                                                                                                  ‫األمثيه بسيطً .‬

    ‫?<‬
    ‫)5>6( ‪If‬‬
    ‫{‬
    ‫;”الرقم ستة أكبر من الرقم خمسة “ ‪echo‬‬
    ‫}‬
    ‫;”‪Echo “<br>end‬‬
    ‫>?‬




                                                       ‫ا‬
‫عيقوم الـ‪ PHP‬في مثالذا ذذا بفكص الشرط (5>6) فذ ا كان صكيكً (‪ )true‬عيقوم بطياعة السطر (الرقف علته اكيلر ملن اللرقف‬
                                                                       ‫ا‬
                                ‫خمسه) ثف يقوم بطياعة ‪ ، end‬وإ ا لف يكن صكيكً فسيقوم بتجاذ الكود وطياعة (‪ )end‬فقط .‬

 ‫يمكذذا أيضا اعتعمال ا في المقارنة بين متغير ورقف أو بين متغير وثابت (‪ )constant‬أو العكس أو المقارنة بين متغيرين .‬

                                                                                                                   ‫مثال (1)‬
    ‫>”‪<html dir =”rtl‬‬
    ‫?<‬
    ‫;5 = ‪$LuckeyNumber‬‬
    ‫)6<‪If ($LuckeyNumber‬‬
    ‫{‬
    ‫;)”رقم الحظ أصغر من الرقم ستة “( ‪echo‬‬
    ‫}‬
    ‫>?‬




                                                                  ‫06‬
www.phpvillage.com               KSA
……………………………………………………………………………………………….




                                                                                        )2( ‫مثال‬
 <html dir=”rtl”>
 <?
 $f=5;
 $r=10;
 If ($f >$r)
 {
 echo "‫$ المتغير‬f ‫$ أكبر من المتغير‬r";
 }
 else{
 echo "‫$ المتغير‬r ‫$ أصغر من المتغير‬f";
 }
 ?>
 </html>




                                                                             : ‫تطييق عميي‬
                                 thegame.php ‫قف بتشغي مكرر الذصوص واكتب الكود التالي واحفظه باعف‬

 <html dir = “rtl”>
 <body>
 <form method =get action=”game.php”>
 ‫ماهو الرقم الذي أفكر به اآلن والذي هو بين 1 و11 ؟‬
 <br>
 <input type=”text” name=”number”>
 <br>
 <br>
 <input type =submit>
 </form>
 </body>
 </html>




                                                 61
‫‪www.phpvillage.com‬‬               ‫‪KSA‬‬
‫.………………………………………………………………………………………………‬




                           ‫قف بفتح مكرر الذصوص لديك من جديد واكتب الكود التالي واحفظه باعف ‪game.php‬‬

 ‫>”‪<html dir=”rtl‬‬
 ‫>‪<body‬‬
 ‫?<‬
 ‫;)01,1( ‪$num = rand‬‬
 ‫)‪if ($number>$num‬‬
 ‫{‬
 ‫; ”لقد اخترت رقم أكبر من الذي أفكر فيه“ ‪echo‬‬
 ‫;“ الرقم الذي أفكر فيه هو “ ‪Echo‬‬
 ‫;‪Echo $num‬‬
                                                                ‫ال‬
 ‫; “يؤسفنا فع ً أنك لم تنجح ، نتمنى أن نقول لك في المرات القادمة “.”>‪Echo “<br‬‬
 ‫}‬
 ‫)‪if ($number<$num‬‬
 ‫{‬
 ‫; ”لقد اخترت رقم أصغر من الذي أفكر فيه“ ‪echo‬‬
 ‫;”‪$num‬الرقم الذي كان في مخيلتي هو “ ‪Echo‬‬
                                                                 ‫ال‬
 ‫;“يؤسفنا فع ً أنك لم تنجح ، نتمنى أن نقول لك في المرات القادمة “ .”>‪Echo “<br‬‬
 ‫}‬
 ‫>?‬
  ‫لقد نجحت‬
 ‫>‪</body‬‬
 ‫>‪</html‬‬




                                                                              ‫شرح التطييق :‬
                                                                                        ‫الداله ‪rand‬‬

                                                  ‫26‬
‫‪www.phpvillage.com‬‬               ‫‪KSA‬‬
‫.………………………………………………………………………………………………‬

    ‫تقوم ذذه الدالة باختيار رقف عشوائي من بين رقمين يتف اعطاءذا إياذا الرقف االول(‪ )x‬ذو األصغر والرقف الثاني ذو األكير(‪)y‬‬
     ‫;)‪Rand (x,y‬‬
                                                          ‫يمكذك حفظ القيمة التي تقوم بذخراج ا ذذه الدالة في متغير مياشرة‬

                                                                                                                                    ‫مثال‬

     ‫;)75.5( ‪$Num = rand‬‬
                                                                                                       ‫وذذا يوضح ماقمذا به في الكود‬

     ‫;)01,1(‪$num=rand‬‬

‫لقد قمذا باختيلار قيملة عشلوائية ثلف قمذلا بمقارنت لا ملل القيملة التلي تلف إدخال لا ملن قيل المسلتخدم فلذ ا كانلت القيملة التلي أدخي لا‬
‫المستخدم أكير من قيمة العدد العشوائي أخيرناه بأن الرقف الذي أدخيه أكير ملن اللرقف الصلكيح ... وذلذا ماتجلده جييلا فلي األعلطر‬
                                                                                                                                ‫التالية :‬


     ‫)‪if ($number>$num‬‬
     ‫{‬
     ‫; ”لقد اخترت رقم أكبر من الذي أفكر فيه“ ‪echo‬‬
     ‫;“ الرقم الذي أفكر فيه هو “ ‪Echo‬‬
     ‫;‪Echo $num‬‬
                                                                    ‫ال‬
     ‫; “يؤسفنا فع ً أنك لم تنجح ، نتمنى أن نقول لك في المرات القادمة “.”>‪Echo “<br‬‬
     ‫}‬

‫فذ ا لف يذطيق الشرط وكلان اللرقف اللذي اختلاره المسلتخدم أصلغر ملن اللرقف العشلوائي فذنله يتلرك الشلرط األول ويتجله اللى الشلرط‬
‫الثاني ويطيق األوامر التي فيه والتي تقوم باخياره بأن الرقف الذي قام باختياره أصغر من الرقف المطيوب ، وذذا ماتجلده جييلا فلي‬
                                                                                                               ‫األعطر التالية :‬

     ‫)‪if ($number<$num‬‬
     ‫{‬
     ‫; ”لقد اخترت رقم أصغر من الذي أفكر فيه“ ‪echo‬‬
     ‫;”‪$num‬الرقم الذي كان في مخيلتي هو “ ‪Echo‬‬
                                                                     ‫ال‬
     ‫;“يؤسفنا فع ً أنك لم تنجح ، نتمنى أن نقول لك في المرات القادمة “ .”>‪Echo “<br‬‬
     ‫}‬

     ‫ال‬
‫فذ ا لف يتطيق الشرطين فذنه يترك ما ويكتب الكيمة (لقد نجكت ) بدون أي كيمات آخرى مثيما كذلا نكتلب الكيمله (يؤعلفذا فعل ً أنلك‬
                            ‫ا‬
‫لف تذجح ، نتمذى أن نقول لك في المرات القادمة ) قي كيمة (لقد نجكت ) ، أتمذلي أنلك قلد ف ملت جيلدً ملا أقلول .... وتظ لر ذلذه‬
                                                                                              ‫العيارة جيية في األعطر التالية :‬

     ‫>?‬
      ‫لقد نجحت‬
     ‫>‪</body‬‬
     ‫>‪</html‬‬

                                                 ‫عيى ذذا نكون قد صذعذا لعية كامية تقوم بذخيار المستخدم عذد نجاحه او خسارته .‬




                                                                         ‫36‬
‫‪www.phpvillage.com‬‬               ‫‪KSA‬‬
‫.………………………………………………………………………………………………‬


                                                                                                               ‫معامالت المساواة : == و ===‬

                                 ‫ا‬                                       ‫ا‬
‫لقد قمذا باعتخدام عالمة المساواة الفردية عابقً في تخزين قيمة في متغير وذانكن نأخذ نوعً من عالملات المسلاواة وذلو عالملة‬
                                                           ‫الساواة المزدوجة (==) وعالمة المساواة المضاعفة (=== ) .‬

                                                      ‫لقد كذا نستخدم عالمة المساواة الفردية او العادية في تخزين القيف في المتغيرات .‬

                                                                                                                                             ‫مثال :‬

     ‫?<‬
     ‫;21=‪$m‬‬
     ‫>?‬

                                   ‫ولكن العالمات التي نتكيف عذ ا اآلن تستخدم في تكديد إ ا ماكانت قيمة معيذة تساوي قيمة اخري .‬




                                                                                                                                             ‫مثال :‬

     ‫?<‬
     ‫;”11”=‪$m‬‬
     ‫;11=‪$u‬‬
     ‫)‪If ($m==$u‬‬
     ‫{‬
     ‫;”القيم متساوية “ ‪Echo‬‬
     ‫}‬
     ‫>?‬




                                                                                           ‫الحظ أن ‪ $m‬متغير حرفي وان ‪ $u‬متغير رقمي .‬
‫إ ا كذللا نريللد ارجللاج قيم لة إلللى متغيللر نسللتخدم عالم لة المسللاواة العادي لة (=) وإ ا أردنللا اختيللار متغيللرين أو قيم لة معيذ لة مللن أن للا‬
                                                                  ‫متساوية نقوم باختيار القيف بواعطة عالمة المساواة المزدوجه (==) .‬
‫في الـ 10.4‪ php‬تف إصدار عالمة مساواة جديدة تقوم باختيار القيف والتعطي القيمه (‪ )true‬إال إ ا كانلت أنلواج القليف متسلاوية‬
                                                                                               ‫وأنواج الييانات في المتغيرات ايضا متساوية .‬

                                                                                                                                        ‫مثال (1) :‬
     ‫?<‬
     ‫;”11”=‪$m‬‬
     ‫;11=‪$u‬‬
     ‫)‪If ($m == $u‬‬
     ‫{‬
     ‫;”القيم متساوية “ ‪Echo‬‬
     ‫}‬
     ‫>?‬
                                                                               ‫46‬
‫‪www.phpvillage.com‬‬               ‫‪KSA‬‬
‫.………………………………………………………………………………………………‬
                                                                                    ‫مثال (2) :‬
    ‫?<‬
    ‫;”11”=‪$m‬‬
    ‫;11=‪$u‬‬
    ‫)‪If ($m === $u‬‬
    ‫{‬
    ‫لن يتم طباعة هذه الجمله على الشاشه النهما غير متكافئتان // ;”القيم متساوية “ ‪Echo‬‬
    ‫}‬
    ‫>?‬




                                                                                                                      ‫التوضيح‬
‫الحظ أنذا في المثال األول اعتخدمذا عالمة المساواة المزدوجة الختيار القليف وكانلت القليف متسلاوية فلي المتغيلرين فلتف طياعلة أن القليف‬
‫متساوية (مل أن نوج الييانات مختيف ) ولكلن فلي المثلال الثلاني عذلدما اعلتخدمذا عالملة المسلاواة المضلاعفة للف يلتف طياعلة أي شلي‬
                                     ‫و لك الن القيف متساوية ولكن نوج الييانات مختيف فالمتغير ‪ $m‬حرفي بيذما المتغير ‪ $u‬رقمي .‬

                                                                                               ‫المعامالت : =! و <>‬
                                                                            ‫إن عكس عالمة المساواة ذي عالمة عدم المساواة (=!)‬

                                                                                                                              ‫مثال :‬

    ‫?<‬
    ‫)99=!5( ‪If‬‬
    ‫;”القيم غير متساوية“ ‪Echo‬‬
    ‫>?‬

                                  ‫الحظ أن 5 التساوي 99 لذلك فذن الشرط صكيح (‪ )true‬لذلك قام بطياعة أن القيف ير متساوية .‬

‫إن الضد من عالمة أكير من وأصغر من ذو عالمة الـ(><) وذو يقوم بارجاج قيمة (‪ )true‬إ ا كانت القيمتين مختيفتلين علن بعضل ما‬
                                                                                              ‫ا‬
                                                                                            ‫أي أنه مث عالمة =! تقرييً .‬

                                                                                                                              ‫مثال :‬
    ‫?<‬
    ‫)99><5( ‪If‬‬
    ‫;”القيم غير متساوية“ ‪Echo‬‬
    ‫>?‬



                                                                    ‫56‬
‫‪www.phpvillage.com‬‬               ‫‪KSA‬‬
‫.………………………………………………………………………………………………‬
                                   ‫تطييق عميي عيى عالمات المساواة وعدم المساواة‬
                                                     ‫قف بفتح مكرر الذصوص لديك واكتب الكود التالي :‬

 ‫>‪<html‬‬
 ‫>‪<head></head‬‬
 ‫>‪<body‬‬
 ‫>”‪<Form method =get ACTION= “quiz.php‬‬
 ‫ماهو اسم الرجل الذي يسمي بالفاروق ؟‬
 ‫>‪<br><br‬‬
 ‫>”عمر”=‪<input type =”radio” name = “man” value‬‬
 ‫عمر بن الخطاب رضي اهلل عنه‬
 ‫>‪<br‬‬
 ‫>”أبوبكر”=‪<input type =”radio” name = “man” value‬‬
 ‫أبو بكر الصديق رضي اهلل عنه‬
 ‫>‪<br‬‬
 ‫>”عثمان”=‪<input type =”radio” name = “man” value‬‬
 ‫عثمان بن عفان رضي اهلل عنه‬
 ‫>‪<br‬‬
 ‫>‪<input type = submit‬‬
 ‫>‪</form‬‬
 ‫>‪</body‬‬
 ‫>‪</html‬‬


                                                                  ‫احفظ ا باعف ‪... quiz.html‬‬




                                                 ‫قف بفتح مكرر الذصوص لديك واكتب الكود التالي :‬
 ‫>”‪<html dir=”rtl‬‬
 ‫>‪<head></head‬‬
 ‫>‪<body‬‬
 ‫?<‬
 ‫)”عمر ”==‪If ($q‬‬
 ‫;”اإلجابة صحيحة“ ‪Echo‬‬
 ‫)”عمر”=!‪If ($q‬‬
 ‫;”اإلجابة خاطئة“ ‪Echo‬‬
 ‫>?‬


                                           ‫66‬
‫‪www.phpvillage.com‬‬               ‫‪KSA‬‬
‫.………………………………………………………………………………………………‬
                                                                       ‫قف بكفظه باعف ‪ quiz.php‬وضع ما في مجيد السيرفر‬

                                                                                             ‫قف بتشغي الميف ‪quiz.html‬‬




                                                                    ‫المعامالت المذطقيه ( ‪) AND,OR,NOT‬‬

‫إن ذذه المعامالت المذطقية تتيح لك بتذفيذ الكود بعد التكقلق ملن مجموعلة شلروط وأيضلا تذفيلذ الكلود إ ا تكقلق أكثلر ملن شلرط :‬
                                                                                                                    ‫(‪)AND‬‬
                                                                              ‫أو تكقق شي معين من بين عده أشياء : (‪)OR‬‬
                                                                                                                ‫ال‬
                                                   ‫ويمكذك مث ً التكقق من عدم صكة شي لكي تقوم بتذفيذ شي آخر : (‪)NOT‬‬

                                                                               ‫ا‬                              ‫ال‬
                                            ‫فيمكذك مث ً أن تقول : إ ا كان الجو ممطرً والعاصفة شديده فين أخر من الييت .‬
                                                                                     ‫ا‬
                                         ‫ويمكذك أن تقول : إ ا كان الجو ذادئً أو اليوجد أمطار فسأقوم بالخرو الى المذتزه .‬
                                                                            ‫ا‬
                                                    ‫ويمكذك أيضا أن تقول : إ ا لف يكن الجو ممطرً عأقوم بالخرو إلى نزذة .‬

                                        ‫ولكن عذد اعتخدامك ل ذه الدوال عييك مراعاة أن تقوم بجع ذذه الشروط بين قوعين .‬




                                                                                          ‫المعام (‪ )AND‬ونظيره ( && )‬

                                   ‫يمكذذا اعتعمال المعام (‪ )AND‬والمعام (&&) ليتكقق من صكة عدة شروط لتذفيذ شي معين‬

                                                                                                                        ‫مثال(1)‬
    ‫?<‬
    ‫;01=‪$w‬‬
    ‫;21=‪$g‬‬
    ‫)21=‪IF ($w=10 and $g‬‬
    ‫;)”لقد تحققت جميع الشروط“( ‪Echo‬‬
    ‫>?‬

                                                                                                                       ‫مثال (2)‬
    ‫?<‬
    ‫;01=‪$w‬‬
    ‫;21=‪$g‬‬
    ‫)51=‪IF ($w=10 && $g‬‬
    ‫;)”لقد تحققت جميع الشروط“( ‪Echo‬‬
    ‫>?‬

‫في المثالين السابقين قمذا بعميية التكقق من أكثر من شرط باعتخدام المعاميين (&& و ‪ ) and‬فعذدما تكققت جميل الشروط تف تذفيلذ‬
                                                           ‫األمر .... وعذدما لف تكن جميل الشروط صكيكة تف تجاذ األمر .‬
                                                   ‫الحظ أنذا قمذا بجع الشروط بين قوعين () لكي يعم الكود بشك صكيح :‬

                                                                  ‫76‬
‫‪www.phpvillage.com‬‬               ‫‪KSA‬‬
‫.………………………………………………………………………………………………‬

    ‫)51=‪($w=10 && $g‬‬
    ‫)21=‪($w=10 and $g‬‬

                                                                                            ‫المعام (‪ )OR‬ونظيره ( || )‬

   ‫المعام ‪ OR‬يقوم بالتكقق من عدة شروط وإ ا تكقق أي واحد مذ ا فذنه يقوم بتذفيذ الكود ونظيره (||) الذي يقوم بذفس العمييه .‬

                                                                                                                ‫مثال (1)‬
    ‫?<‬
    ‫;001=‪$E‬‬
    ‫;8=‪$T‬‬
    ‫) 8=‪IF ($E=14 OR $E=55 OR $E = 10 OR $T‬‬
    ‫;)”لقد تحقق أحد هذه الشروط“( ‪Echo‬‬
    ‫>?‬

                                                                                                                ‫مثال (2)‬
    ‫?<‬
    ‫;001=‪$E‬‬
    ‫;854=‪$T‬‬
    ‫) 8=‪IF ($E=14 || $E=55 || $E = 10 || $T‬‬
    ‫;)”لقد تحقق أحد هذه الشروط“( ‪Echo‬‬
    ‫>?‬

                                     ‫إ ن عذدما تكقق واحد من ذذه الشروط تف طياعة السطر (لقد تكقق أحد ذذه الشروط ) .‬

‫ميكوظة قد التكون بتيك األذمية لكن يجب أن تعرف أن الرموز && و || ل ا األعيقية واألفضيية عيى اعتخدام ‪ AND‬و ‪. OR‬‬


                                                                                            ‫المعام ‪ NOT‬ونظيره ( ! )‬

                                                                        ‫ال‬
‫في الواقل اليمكذك اعتخدام ‪ NOT‬أبدا ألن لا ليسلت أصل ً موجلودة فلي لغلة ‪ PHP‬لكلن يمكذلك اعلتخدام المعامل ( ! ) كيلدي ل لا ف لو‬
                        ‫يؤدي نفس وظيفت ا وذي القيام بالتأكد من أن ذذاك قيمة ير صكيكة (‪ )FALSE‬لكي يتف تذفيذ شي معين .‬

    ‫?<‬
    ‫;”ماجد”=‪$F‬‬
    ‫)”نعمان”==‪IF !($F‬‬
              ‫ال‬
    ‫;)"أه ً بك"( ‪Echo‬‬
    ‫>?‬

  ‫في المثال السابق يقوم الـ‪ PHP‬بالتأكد من أن المتغير ‪ $F‬اليكتوي عيى القيمة الكرفية (نعمان) ويتف لك باعتخدام المعام ( ! )‬
                                                                         ‫ال‬
                                                                     ‫وعذدما يتف التأكد من لك يقوم بطياعة السطر (أذ ً بك)‬

                                 ‫ا‬
   ‫ونشير إلى أنذا عذدما نقوم باختيار متغير بواعطة المعام ( ! ) فذن الـ‪ PHP‬إ ا وجد المتغير فار ً أو لف يتف انشاؤه يعطيه القيمة‬
                                                                                                      ‫صفر وذي ‪. FALSE‬‬

                                                                                                                           ‫مثال‬
    ‫))‪IF (!($R‬‬
    ‫;)01( ‪Echo‬‬


                                                                ‫86‬
‫‪www.phpvillage.com‬‬               ‫‪KSA‬‬
‫.………………………………………………………………………………………………‬
                                                                                ‫استخدام المعامالت <= و >=‬

‫من المعامالت المعروفة والمشل ورة فلي الرياضليات ذلي عالمتلي أصلغر ملن أو يسلاوي =< أو أكيلر ملن أو يسلاوي => وذلي‬
‫تستخدم بذفس وظيفت ا بالـ‪ php‬وذي معرفة إ ا ماكانلت قيملة أصلغر أو أكيلر ملن أو تسلاوي قيملة آخلري ، وذلذه األمثيلة تعطيلك‬
                                                                                                                    ‫ال‬
                                                                                              ‫مدخ ً أشم لف ف ذذه الدوال :‬

    ‫?<‬
    ‫;51 = ‪$t‬‬
    ‫) 01 => ‪If ($t‬‬
    ‫;)”>‪” . “<br‬ممتاز“( ‪Echo‬‬
    ‫;5 = ‪$t‬‬
    ‫) 9 =< ‪If ($t‬‬
    ‫;)”جيد جدا“( ‪Echo‬‬
    ‫>?‬

                                                                                                       ‫تجميل المعامالت‬
 ‫يمكذذا في الشرط أن نتكقق ملن مجموعلة ملن القليف باعلتخدام مجموعلة ملن المعلامالت ، ونقلوم بتجميلل ذلذه المجموعلات داخل‬
                                                                                          ‫ا‬
                                          ‫أقواس () مثيما كذا نستخدم عابقً أكثر من معام (+ ، - ،/ ،*) باعتخدام األقواس .‬

                                                                                                    ‫ا‬     ‫ا‬
                                                                                 ‫وعييدو لك واضكً وجييً في مثالذا التالى :‬

    ‫?<‬
    ‫;01=‪$a‬‬
    ‫;5=‪$y‬‬
    ‫;92= ‪$t‬‬
    ‫))11 => ‪If (($a == 10) or ($a==54) and ($y !=25) and ($t‬‬
    ‫;"تحققت جميع الشروط" ‪Echo‬‬
    ‫>?‬


         ‫عيتف طياعة ألنه قيمة تجميل التعيير السابق تكون صكيكة ولو قمذا بشرح المثال فسذقوم برؤية القسف األول وذو :‬
    ‫)45==‪($a == 10) or ($a‬‬
                                                              ‫ا‬                                             ‫ا‬
                                                            ‫وطيعً المتغير يكم القيمة 01 فسيكون ذذا الجزء صكيكً .‬

                                                                                                      ‫ثف نقوم برؤية الجزء :‬

      ‫)11 => ‪($y !=25) and ($t‬‬
                                                                                                            ‫ا‬
                                           ‫وطيعً تف التكقق من جميل الشروط وتف طياعة الكيمة (تكققت جميل الشروط ) .‬

                                                                       ‫تعدد الشروط ( ‪ else if‬و ‪) else‬‬
                                                                        ‫ال‬
                                                     ‫يمكذذا اعتخدام أكثر من ذيكيية ليعياره ‪ if‬ف ذاك مث ً ال يكيية التالية :‬

      ‫‪If condtion is true‬‬
      ‫{‬
      ‫‪Excute code‬‬
      ‫}‬
      ‫‪Else‬‬
                                                                 ‫96‬
‫‪www.phpvillage.com‬‬               ‫‪KSA‬‬
‫.………………………………………………………………………………………………‬
  ‫{‬
  ‫‪Excute other code‬‬
   ‫}‬

                                ‫ا‬                                          ‫ا‬
     ‫وذي تقوم بالتكقق من الشرط فذ ا وجدته صكيكً قامت بتذفيذ الكود األول وإ ا لف تجده صكيكً عتقوم بتذفيذ الكود اآلخر .‬
                                                                                                                  ‫مثال‬

  ‫?<‬
  ‫;01=‪$age‬‬
  ‫)81>‪If ($age‬‬
   ‫{‬
  ‫;"مرحبا بك في أكبر موقع تجاري إلكتروني" ‪echo‬‬
  ‫}‬
  ‫‪else‬‬
  ‫{‬
  ‫;”ممنوع دخول األطفال الموقع ألنهم اليملكون المال“ ‪echo‬‬
  ‫}‬
  ‫>?‬


                                                                                  ‫ويمكذذا أيضا اعتخدام ال يكيية التالية :‬
  ‫‪If condtion is true‬‬
  ‫{‬
  ‫‪Excute code‬‬
  ‫}‬
  ‫‪Elseif‬‬
  ‫{‬
  ‫‪Excute other code‬‬
   ‫}‬
  ‫‪Else‬‬
  ‫{‬
  ‫‪Excute other code‬‬
   ‫}‬

                                                   ‫ا‬
  ‫وذي تقوم بتطييق أكثر من شرط فذ ا لف يكن أي شرط من الشروط صكيكً عيتف تذفيذ الكود الذي يقل بعد كيمه ‪ . else‬مثال :‬

  ‫?<‬
  ‫;01=‪$age‬‬
   ‫)81=<‪If ($age‬‬
   ‫{‬
  ‫;"مرحبا بك في أكبر موقع تجاري إلكتروني" ‪echo‬‬
  ‫}‬
  ‫;(44 => ‪elseif )$y‬‬
  ‫{‬
  ‫;”مافي مشكلة برضه إذا كنت كبير “ ‪echo‬‬
  ‫}‬
  ‫‪else‬‬
  ‫{‬
  ‫;”ممنوع البقية“ ‪echo‬‬
  ‫}‬
                                                          ‫07‬
‫‪www.phpvillage.com‬‬               ‫‪KSA‬‬
‫.………………………………………………………………………………………………‬
       ‫>?‬

                                                                                            ‫تداخ العيارات الشرطية‬
                 ‫ال‬
‫يمكذك تداخ العيارات الشرطية ، ونعذي بتداخ العيارات الشرطية ذي أن تقوم بأكثر من عميية شرطيه متداخيه فمث ً إ ا كان شرط ما‬
                                                                                       ‫ا‬
                                                    ‫صكيكً فذنه يجب أن يكون شرط آخر صكيكً لكي يتف حصول شي معين و ير لك .‬       ‫ا‬
                                                                                                                                ‫مثال :‬
       ‫?<‬
       ‫;”‪$h=”majed‬‬
       ‫;54=‪$f‬‬
       ‫) ”‪If ($h = = “majed‬‬
       ‫{‬            ‫)54 = =‪If ( $f‬‬
                    ‫{‬
                    ‫;”االسم والرقم صحيحان“ ‪echo‬‬
                    ‫}‬
                     ‫‪else‬‬
                    ‫{‬
                    ‫;) “ الرقم غير صحيح“( ‪echo‬‬
                    ‫}‬       ‫}‬
       ‫‪else‬‬         ‫{‬
       ‫; “ اسم تسجيل الدخول غير صحيح“ ‪echo‬‬
       ‫}‬
       ‫>?‬
                                                                                                            ‫ا‬
‫ذذا مجرد مثال بسيط جدً لتداخ الدوال الشرطية حيع يقوم بذجراء اختيار عيى قيمة معيذة ثلف يقلوم عذلد تجلاوزه للك االختيلار بذجلاح‬
‫بذجراء اختيار ثاني فذ ا تف تجاوز االختيار الثاني يتف طياعة االعف واللرقف صلكيكان وإ ا للف يلتف االجتيلاز يلتف طياعلة عيلارة الفشل فلي‬
                                                                                                                            ‫االجتياز .‬




                                                                                                                 ‫تطييق عميي‬
                                                      ‫عذقوم في ذذا التطييق بصذاعة مسابقة بسيطة نستخدم في ا ماتكيمذا عذه عابقً‬
                                                      ‫ا‬
                                                                                  ‫1 - قف بانشاء ميف ‪. Msabqa.html‬‬
                                                                                           ‫2 - قف بكتابه الكود التالي فيه :‬
‫>‪<html‬‬
‫>‪<body‬‬

‫>"‪<form method="POST" action="msabqa.php" dir="rtl‬‬
‫من هو أول اخللفاء الراشدين>‪<br‬‬
‫‪<br><input‬أبوبكر الصديق>"‪<p><br><input type="radio" value="abubaker" name="s‬‬
‫عمر>"‪type="radio" value="3mar" name="s‬‬
‫>‪<br><br><br‬عثمان>"‪<br><input type="radio" value="3thman" checked name="s‬‬

‫>‪</p‬‬

                                                                     ‫17‬
www.phpvillage.com               KSA
……………………………………………………………………………………………….
  <p><input type="submit" value="‫>"ارسال‬    <input type="reset"
value="‫/<>"حــــــــــذف‬p>
</form>

</body><html>

                                                   msabqa.php ‫قف بفتح ميف وقف بتسميته‬

<?
<html dir = “rtl”>
If $s == “3mar”{
 ‫اإلجابه صحيحة‬
}
else
{
echo “‫;”اإلجابه خاطئة‬
}
?>




                                                             Switch ‫العيارة‬
     Switch (VARIABLE) {
      CASE THING1 :
              Excute code ;
             break;
      CASE THING2 :
              Excute code ;
              break;
     Default;
              Excute code ;

                                       72
‫‪www.phpvillage.com‬‬               ‫‪KSA‬‬
‫.………………………………………………………………………………………………‬
        ‫}‬
    ‫ومكيية أكثر وتتيح لك اختيار قيمة متغير وإجراء أكثر من اختيار عييه .‬   ‫تقوم العيارة بذفس عميية العيارة ‪ if‬ولكن ب يكيية أع‬

                                                                                                                  ‫;‪break‬‬
                                 ‫تقوم بالخرو من عياره معيذه مث ‪ switch‬و ‪ if‬والذذاب الى األوامر والعيارات التي بعدذا .‬
                                                                                                                 ‫;‪EXIT‬‬
                                                                                         ‫ا‬
‫تقوم بعميية الخرو من الكود ن ائيً والتطيق أي أوامر بعدذا ، وفي األمثيه التوضيكية التالية علتجد أن ;‪ break‬تخلر ملن العيلارة‬
                                                  ‫فقط (‪ )Statement‬بيذما الـ;‪ exit‬تقوم بالخرو من كام الكود (‪.)code‬‬

                                                                                                                      ‫مثال :‬
‫?<‬
‫;01=‪$s‬‬
‫{ )01=‪if ($s‬‬
‫;”01=‪echo “number‬‬
‫;‪exit‬‬
‫}‬
‫{ )11<‪elseif ($s‬‬
  ‫”11 ‪echo “number is less than‬‬
‫{‬
‫;”‪echo “hello‬‬
‫>?‬

                                                                                                                      ‫مثال :‬
‫?<‬
‫;01=‪$s‬‬
‫{ )01=‪if ($s‬‬
‫;”01=‪echo “number‬‬
‫;‪break‬‬
‫}‬
‫{ )11<‪elseif ($s‬‬
  ‫”11 ‪echo “number is less than‬‬
‫{‬
‫;”‪echo “Hello‬‬
‫>?‬

                                                                                                                   ‫;‪Defualt‬‬
 ‫إ ا لف تصيح جميل الكاالت (‪ )Cases‬في العيارة (‪ )Switch‬فسيتف تذفيذ األوامر التلي تقلل بعلد ذلذه الكيملة وذلي تلؤدي نفلس عمل‬
                                                                                                                ‫ا‬
                                                                                                ‫‪ else‬تقرييً في العياره ‪. if‬‬



                                                                                                                  ‫مثال ( 1)‬
‫?<‬
‫;”‪$g= “ahmed‬‬
‫{ )‪Switch ($g‬‬
       ‫:”‪Case “ahmed‬‬
              ‫;“ مسموح“ ‪Echo‬‬
              ‫; ‪Break‬‬
 ‫: “ ‪Case “khaled‬‬
              ‫; “ ممنوع“ ‪Echo‬‬
              ‫; ‪Break‬‬
 ‫: “‪Case “salem‬‬
                                                               ‫37‬
‫‪www.phpvillage.com‬‬               ‫‪KSA‬‬
‫.………………………………………………………………………………………………‬
             ‫; “ ممنوع“ ‪Echo‬‬
             ‫; ‪Break‬‬
  ‫: “ ‪Case “Mohmed‬‬
             ‫; “ مسموح“ ‪Echo‬‬
             ‫; ‪Break‬‬
‫; ‪Default‬‬
       ‫;”لقد ادخلت اسم غير صالح“ ‪Echo‬‬
‫}‬
‫>?‬

                                                                                                         ‫مثال (2)‬

‫{ )‪Switch ($g‬‬
        ‫:05>‪Case $g‬‬
               ‫;“ كبير“ ‪Echo‬‬
               ‫; ‪Break‬‬
  ‫: 04 ‪Case‬‬
               ‫; “ الباس“ ‪Echo‬‬
               ‫; ‪Break‬‬
  ‫: )51<‪Case ($g‬‬
               ‫; “ أطفال ممنوع“ ‪Echo‬‬
               ‫; ‪Break‬‬
   ‫: 03 ‪Case‬‬
               ‫; “ مسموح“ ‪Echo‬‬
               ‫; ‪Break‬‬
‫}‬

                     ‫الحظ أنذا عذد اختيارنا لذصوص نكتا الى عالمتي تذصيص مزدوجة وعذد االرقام فانذا النكتا الي لك .‬




                                                                                              ‫تطييق عميي‬
                                              ‫قف بفتح مكرر الذصوص لديك واكتب الكود التالي واحفظه باعف ‪age.html‬‬

‫>‪<html‬‬
‫>”‪<form method=post action=”age.php‬‬
 ‫كم عمرك ؟‬
‫>‪<br‬‬
‫>”‪<input type=”text” name = “g‬‬
                                                        ‫47‬
‫‪www.phpvillage.com‬‬               ‫‪KSA‬‬
‫.………………………………………………………………………………………………‬
‫>”ارسال”=‪<input type=submit value‬‬
‫>‪</form‬‬
‫>‪</html‬‬

                                                     ‫قف بفتح مكرر الذصوص لديك واكتب الكود التالي واحفظه باعف ‪age.php‬‬

‫?<‬
 ‫{ )‪Switch ($g‬‬
       ‫:05>‪Case $g‬‬
               ‫;“ كبير“ ‪Echo‬‬
               ‫; ‪Break‬‬
       ‫: 04 ‪Case‬‬
               ‫; “ الباس“ ‪Echo‬‬
               ‫; ‪Break‬‬
      ‫: )51<‪Case ($g‬‬
               ‫; “ أطفال ممنوع“ ‪Echo‬‬
               ‫; ‪Break‬‬
      ‫: 03 ‪Case‬‬
               ‫; “ مسموح“ ‪Echo‬‬
               ‫; ‪Break‬‬
‫}‬
‫>?‬


                                                                                                                  ‫الشرح‬
‫تقوم العيارة ‪ Switch‬باختيار قيمة متغير ما ويمكذك إجراء أكثر ملن افتلراض عييله ويجلب عييلك كتابلة الكيملة ;‪ break‬لكلي تقلوم‬
                                                                                           ‫ال‬
                                                              ‫بذيقاف تذفيذ العيارة ‪ switch‬فمث ً لو قمت بكتابة الكود التالي :‬
‫?<‬
‫04=‪$g‬‬
    ‫{ )‪Switch ($g‬‬
          ‫:05<‪Case $g‬‬
                 ‫;“ 1“ ‪Echo‬‬

         ‫: 04 ‪Case‬‬
               ‫; “2“ ‪Echo‬‬
        ‫}‬
‫>?‬

‫فا ا ادخ المستخدم الرقف 04 فسيتف طياعة الرقمين واحد واثذين كالذما و لك ألنك لف تقف بذيقاف العيارة فاكميت التكقق وطيقت جميل‬
                                                                                                         ‫العمييات المطيوبة .‬




                                                                                        ‫التخيص من وعوم الـ ‪html‬‬
  ‫إ ا قمت بوضل مربل نص وأردت من المستخدم كتابة شي فيه فذنه يستطيل ادخال أي شي ولذفترض أنه كتب في مربل الذص كالتالى‬
‫… >‪I am <b>ahmed</b‬‬
                                                                           ‫فسيقوم المتصفح بعرض ا بعد معالجت ا كالتالى :‬
‫.… ‪I am ahmed‬‬
                                                                                               ‫ولذقف بتطييق عميي عيى لك‬

                                                               ‫57‬
‫‪www.phpvillage.com‬‬               ‫‪KSA‬‬
‫.………………………………………………………………………………………………‬
                                               ‫قف بفتح مكرر الذصوص واكتب الكود التالي واحفظه باعف ‪htmlch.html‬‬
‫>"‪<html dir="rtl‬‬
‫>"‪<form method=post action="html.php‬‬
‫أدخل اسمك الكريم‬
‫>‪<br‬‬
‫>"‪<input type="text" name = "fname‬‬
‫>"ارسال"=‪<input type=submit value‬‬
‫>‪</form‬‬
‫>‪</html‬‬




                                               ‫قف بفتح مكرر الذصوص واكتب الكود التالي واحفظه باعف ‪html.php‬‬
‫?<‬
‫;”هذا هو الشكل الطبيعي للعبارة عند طباعتها “ ‪Echo‬‬
‫;‪Echo “<br>” . $fname‬‬
‫>?‬
 ‫قف بوضل الميفات في مجيد السيرفر ثف قف بتشغي الميف ‪ htmlch.html‬واكتب في مربل الذص أي شي وضعه بين وعوم ‪html‬‬




                                                                                                           ‫مثال :‬
‫>‪I am <b><i>alfareees</b></i‬‬

             ‫عتجد أنه قدتف التعام مل الوعوم كـ ‪ html‬وليس كذص عادي ولكي تعرض ا كذص عادي فذنك تقوم باعتخدام الدالة‬

‫;)(‪HtmlSpecialChars‬‬
                                                        ‫ا‬
                                                      ‫حيع أن ا عتقوم بمعامية كود الـ‪ html‬كذص عادي وطييعي تمامً .‬
                                                                                                              ‫ا‬
                                                                   ‫إ ً نقوم بتعدي ميف الـ‪ html.php‬ليصيح كالتالى :‬

‫?<‬
‫;)‪$fname = HtmlSpecialChars($fname‬‬
‫;”هذا هو الشكل بعد استخدام الدالة “ ‪Echo‬‬
‫;‪Echo “<br>” . $fname‬‬
‫>?‬




                                                         ‫67‬

				
DOCUMENT INFO
Shared By:
Categories:
Tags:
Stats:
views:3
posted:5/15/2012
language:
pages:19