تابع دورة البي أتش بي من الدرس الأول حتى الرابع
في هذا الجزء سنتكلم عن:
أكواد التحكم (العبارات الشرطية, الحلقات)
كما تعلمنا سابقاً بعدما قمنا بتجهيز السيرفر الشخصي الافتراضي
تعلمنا كيف يمكننا إنشاء ملف PHP وحفظه بالصيغة .php وكتابة الأكواد داخل علامات الـ php
هنا العبارات الشرطية, والتي تتكون من if و if..else وswitch، والحلقات التي تتكون من while و do…while و for و foreach.. سنشرحها واحدة واحدة.
العبارة الشرطية if
عندما تريد عمل أي شي أحياناً تقترن بالكلمة if والتي تعني باللغة العربية "إذا", فمثلاً "إذا" كانت السلعة التي أريد بيعها وصلت للحد الذي أطمح إليه وهو 200 ريال فأنا موافق, نقوم ببرمجة الجملة السابقة بالعبارة التالية:
<?
$ownerlimit = 200;
$buyerdeal = 150;
if($buyerdeal == $ownerlimit) {
echo("OK");
}
?>
النتيجة لا شيء، لن يتم طباعة OK، لأن 150 لا تساوي 200, ولكن لو تم تغيير 150 إلى 200 فسيتم طباعة OK.
نلاحظ أولاً أننا استخدمنا العلامة = وكررنها كالتالي == , نعم يجب ذلك في العبارات الشرطية دائماً تكون علامة المساواة مكررة == وهي من ضمن علامات عملية المقارنة, وإليك جدول العمليات داخل العبارات الشرطية:
لو لاحظنا في كودنا السابق أننا كتبنا == , فمعناه إذا كان المبلغ 200 ريال (فقط) فأنا موافق، أي لو كان 300 ريال فأنا غير موافق! طبعاً ما فيه أحد ما يقول زيادة الخير خيرين، لذلك المفروض أننا نكتب "إذا كان المبلغ المطروح (يساوي أو أكبر من) 200 ريال، فالعلامة التي نود أن نضيفها الآن هي =< لكي يكون الكود البرمجي بشكل الصحيح الذي تم التخطيط له.
العبارة الشرطية if … else
سنقوم الآن بتجربة if..else وهي بالضبط نفس if ولكن بزيادة else التي تعني "وإلا" فهي تكون عندما لا يتم تنفيذ العبارات الشرطية المدخلة, نطبق مباشرة:
<?
$ownerlimit = 200;
$buyerdeal = 150;
if($buyerdeal >= $ownerlimit) {
echo("OK");
} else {
echo("NO");
}
?>
الكود واضح جداً كما تم شرحه قبل قليل, وهو كالتالي "إذا" 150 "أكبر من أو يساوي" 200 أطبع OK "وإلا" أطبع NO.
العبارة الشرطية if … elseif … else
يمكنك إضافة أكثر من شرط في نفس العبارة الشرطية بالطريقة التالي if … elseif … else حيث تكون متداخله ببعضها كالتالي:
<?
$ownerlimit = 200;
$buyerdeal = 150;
if($buyerdeal >= $ownerlimit) {
echo("OK");
} elseif($buyerdeal == 0) {
echo("WHAT?");
} else {
echo("NO");
}
?>
الآن اتضحت لنا الصورة بما يتعلق بالعبارات الشرطية (if) و (if … else) و (if … elseif … else)
العبارة الشرطية switch
سننتقل إلى العبارة الشرطية switch وهذا هو المثال الخاص بها:
<?
$i = 3;
switch ($i)
{
case 1:
echo "Num 1";
break;
case 2:
echo "Num 2";
break;
case 3:
echo "Num 3";
break;
default:
echo "NOTHING";
}
?>
لنشرح الكود السابق, سيتم طباعة Num 3 لأن المتغير $i يساوي 3 هذه الطريقة جميله لعمل خيارات كثيرة.
الآن سننتقل إلى مرحلة الحلقات والتي تسمى Loops وهذا العملية توفر عليك عملية تكرار كبير فهي كالحلقة تقوم بتحديد عدد مرات الدوران
ومنها while و do … while و for و foreach
الحلقة while
كالتالي:
<?
$i = 0;
while($i<10) {
echo($i . "<br />");
$i++;
}
?>
النتيجة ستكون كالتالي :
0
1
2
3
4
5
6
7
8
9
العملية واضحة جداً وللتوضيح <br/> هو وسم (سطر جديد) في لغة XHTML
الحلقة do …while
ننتقل إلى do … while وهي لتنفيذ الأمر أول مره مهما كان الظرف أو الحالة بعدها يقوم بالتأكد من أن الحالة تنطبق عليه.
<?
$i = 0;
do {
echo($i . "<br />");
$i++;
} while($i<10)
?>
النتيجة نفس نتيجة الكود السابق
الآن ننتقل إلى حلقات الـ for و foreche والتي تقوم بنفس العملية وهي تكرار عملية كحلقة ولكن بطريقة مختلفة ومبسطة
الحلقة for
for ($i=0; $i<10; $i++)
{
echo($i . "<br />");
}
حيث سيتم طباعة أيضاً من 0 إلى 9 أسطر تحت بعض, الاختلاف هنا أنه تم كتابة الأمر داخل الشرط مباشرة مع عملية الزيادة $i++
الحلقة foreach
هذه الحلقة هي التي تختلف قليلاً عن أخواتها فهي تعتمد على المصفوفات بشكل جميل ويجب الأخذ باعتبارها بشكل جيد لأن كثير من الأوامر في لغة البرمجة الـ PHP تنتج لنا مصفوفات يمكننا التعامل معها مثل عندما نجلب بيانات من قاعدة البيانات يتم جلبها في مصفوفة لعرضها بطريقة حلقية بالـ foreach.
<?
$i = array("one","two","three");
foreach ($i as $value)
{
echo $value . "<br />";
}
?>
النتيجة:
one
two
three
بإذن الله في الدروس القادمة سنتعلم كيفية الاتصال بقاعدة البيانات وجلب بيانات وتحديث وحذف البيانات أي جزء خاص بقاعدة البيانات و PHP.
لكن ذلك بعد أن نكمل دورتنا المجدولة, نلقاكم في درس آخر بإذن الله
وشكراً لكم.
الله يعطيك العافية على مجهودك الكبير في إعداد هذه الدروس
،،
بإذن الله ترون تطبيقي قريباً
الله يعطيك العافيه أخي عبدالملك
مجهود تشكر عليه وجعله الله في موازين حسناتك
لدي سؤالين
1/ في الكود لمثال for
echo($i . “”);
ماذا تعني ( 
????????????
2/بالنسبة لحلقة foreach أتمنى أن يكون هنالك مثال أخر للتوضيح لاني مافهمت كيف ومتى استخدمها ؟؟؟
بارك الله فيك
الله يعطيك العافية أخي عبدالملك
وجعلها الله في ميزان حسنناتك
لدي سؤالين
1/في حلقة for
echo($i . “”);
ماذا تعني  
???????????????
2/بالنسبة لحلقة foreach
أتمنى أن تضع مثال أخر للتوضيح
بصراحه مافهمت متى وكيفية استخدم هذه الدالة؟
بارك الله فيك
شكراً لك أخوي عبدالله, الله لا يحرمنا من تشجيعك
م.عبدالله حياك الله
1/ تعني بلغة الـ XHTML مسافة لقد تم اخذها بالغلط عند كتابة الكود تم مسحها
2/ حالياً بشكل مبدأي المثال الأول يوضح طريقتها البسيطه لكن سيتم بإذن الله التطرق لها بشكل موسع كما طرحت
تقبل اطيب تحياتي لك
جزاك الله كل خير اخ عبد الملك
بارك الله في مجهودك الطيب
وبالتوفيق لك يارب
جزاك الله كل خير على الدرس الجميل ..
وأهم شيء لا تفتر عزيمتك مع الوقت .. لان دروسك صراحة واضحة وبسيطة ومفهومة
الله يعطيك العافية :)
الله يعطييك العاافية
الله يعطيك الصحة والعافية عبدالملك ، جزآك الله خير وجعل مثوآك الجنة يارب
أعتذر عن التطفل ، ومساعدتك في الاجابة عن بعض الاسئلة او توضيح بعض الاشياء
————————————-
بخصوص العبارة الشرطية switch تحتوي في الاخير على حالة default وهي تعني الافتراضي
يعني لو لم تتحقق القيم لــ i$ ولم تكن 1 أو 2 أو 3 فانها سوف تذهب الى القيمة الافتراضية وتنفذ الامر الموجود في default
————————————-
بخصوص الأخ/الأخت اللي سأل عن foreach هنا التوضيح
<?
$i = array(“one”,”two”,”three”);
foreach ($i as $value)
{
echo $value . “”;
}
?>
—–
i$ عبارة عن مصفوفة تتكون من ثلاث قيم ، والحلقة foreach تقوم باخذ قيم المصفوفة واحد ورى الثاني حسب الترتيب وتسنده للقيمة value$ وتطبق عليه الاوامر بداخل الحلقة ، يعني في البداية بتاخذ قيمة المصفوفة الاولى اللي هي one وتسندها للمتغير value$ ويصبح
value$ = one
بعدين تدخل في الحلقة وتبدأ في تنفيذ الأوامر بداخلها مثل امر الطباعة اللي كتب echo $value . “”;
بعدين ترجع وتاخذ القيمة الثانية للمصفوفة وتسندها لنفس المتغير وتنزل وتطبق عليه الاوامر وهكذا حتى تنتهي من عناصر المصفوفة 000000 (:
شكراً للجميع وألف شكر لك أخوي عبدالله على متابعتك وعلى مساعدتك الرائعة والتي اسعدني كثيراً بإضافتك الرائعة وهذا فعلاً ما اتمناه, بارك الله فيك ونفع بك
وإذا كان هناك اي سؤال آخر نحن لها مثل ما يقولون مع الزميل عبدالله واي شخص فيشرفنا انضمامكم
اطيب تحياتي
الله يجزاك خير على التوضيح
ولكن كيف تتم القراءة إذا كانت المصفوفه أكبر مثلا مكونه من ثلاث اعمده وثلاث صفوف؟؟؟؟
بارك الله فيك
جزاك الله خير
ممتنين لك
الله يجزاك كل الخير يا عبدالملك الثاري
ومن يد ما نعدمها يارب
تحيتي لك
السلام عليكم
الله يعطيك العافيه
الدروس جدا واضحه
وإلى الأن بسيطه ومافي اي مشاكل
جزاك الله خير
الله يجزاك خير …لحد الآآن تمام وبسيط
لكن ممكن ..سؤال أعرف انو بدري لكن اعذرني على الفضول
مثل ما الكل عارف انو صفحات النت مليانة أشكال رسومية وأزرار,,الخ
طيب لحد هاللحظة ,,كيف ممكن أستخدم هالاشياءء بال php
جزاك الله كل خير …
دورة جميلة جدا ,,,
وربنا يوفقك وتعملنا دروس أكتر من كدا :)
الف شكر لك اخوي
صدق استفدنا من دروسك
ننتظر الدروس الآتية
هالدرس يبي له مخمخه
بس بعض الاوامر ماتعمقت فيها اهوي عبدالملك
لان بصرحه هذي الاوامر جاتني بمادة لغات حاسب وكانت حايستني وكرهتها كره ماتتصوره
المهم ياليت يالغالي تتعمق شوي وتشرح لنا كل امر ونتيجة الامر والخطوات الي يمر فيها
تحياتي لك
لدي سؤال
بالنسبة لحلقة foreach
اذا كنت ابغى عدد محدد من المصفوفة يعني ابغى أول 10
او بطريقة اخرى ابغى احدد عدد الدورات وليس الى النهاية
شكرا لك أخي العزيز عبد الملك
ولكن متى سوف يتم وضع بقية الدروس ؟؟
بانتظار بقية الدروس
بانتظار البقية
وجزاك الله خير
انا اصم موقع وعندي شغلتين حابه اعرف كيف اسويها
الاولى كيف اسوي مستطيل كبير يحمل معلومات الصفحة ؟؟هل هي عن طريق جدول او عن طريق CSS
والثانية كيف ابين مراحل عملية شراء لسلع
صورة توضيحية على سؤالي
http://www.alhnuf.com/up/pics-gif/upload/view_h.php?file=c3f6bc82c7
اخى الغالى لغة php تستخدم فى البرمجه وليس فى شكل ظهور الصور والنصوص فهذا يعود الى لغة HTML و CSS ولكن من الممكن استخدام PHP فى بعض استخدامات اخرى كالكتابة على الصور اثناء رفعها على السرفر وايضا تصغير الصور وغيرها من الخيارات التى توفرها PHP