آموزشPHP:ساختارهای تصمیم گیری (بخش دوم)

آموزش PHP

آموزش PHPساختار های تصمیم گیری (بخش دوم

سلام  خدمت همراهان عزیز  یکشنبه ها و پنج شنبه ها با آموزش زبان برنامه نویسی (HTML) و (PHP) همراه شما هستیم. برای اطلاعات بیشتر به مقاله ی هفته ی قبل مراجعه فرمایید . در آموزش قبل به بررسی دستور (if) پرداختیم و فیلم آموزشی هم برای یادگیری بهتر تو سایت قرار دادم .

عنوان آموزش امروز:

ساختارهای تصمیم گیری : (دستور elseif)

آموزش فصل چهارم php

همچنین ساختار های تصمیم گیری ، تعدادی از دستورات هستند که شرطی را تست می کنند و در صورت برقرار بودن

شرط ، مجموعه ای از دستورات را اجرا می نمایند وگرنه مجموعه دیگری از دستورات را اجرا می کنند.

بنابراین ، ساختار های تصمیم گیری می توانند جریان اجرای برنامه را تغییر دهند . بدون وجود ساختار های تصمیم گیری ، دستورات برنامه به ترتیب از اولین دستور به آخرین دستور اجرا می شوند.

ساختارهای تصمیم در PHP:

  • اول :دستور if
  • دوم :دستور elseif
  • سوم :دستور  switch

دوم : دستور elseif

همان طور که دیدید if در مسله هایی با دو گزینه به کار می رود . اگر بیش از دو گزینه وجود داشته باشد ، باید از if

های تو در تو استفاده کرد. که این کار برنامه را پیچیده می کند . روش دیگر استفاده از دستور elseif است .

در واقع دستور (elseif) ترکیبی از دستور if دستور else است. به عنوان مثال می خواهیم برای مشتری ای که کتاب ها را سفارش می دهد. تحت شرایطی تخفیف قائل شویم:

کمتر از 10 عدد تخفیف ندارد

10 تا 49 عدد به میزان 5% تخفیف دارد

50 تا 99 عدد به میزان 10% تخفیف دارد

100 یا بیشتر از100 عدد به میزان 15% تخفیف دارد

دانلود رایگان :

دانلود افزونه yoast seo premium نسخه 19.5

مثال

طراحی صفحه ای که سفارش کتاب را از مشتری دریافت کرده بر اساس قرار داد فوق ، میزان تخفیف و میزان پرداخت مشتری را تعیین می کند . این مثال با استفاده از دستور elseif حل شده است.

مراحل طراحی صفحه:

1 . دستورات زیر را در فایل ch4-2.html تایپ و ذخیره کنید . یعنی این دستورات را در Notepad تایپ کرده به نام Ch4-2.html در پوشه ی www ذخیره کنید:

 

<form action=”ch4-2.php” method= post>

<table border=0>

<tr bgcolor=# cccccc>

<td width = 150> book name </td>

<td width = 15> quantity </td>

<tr/>

<tr>

<td> pascal </td>

<td align=”center”> <input type=”text” name=”pasqty” size=”3″ maxlength=”3″ > </td>

<tr/>

<tr>

<td> visual c++ </td>

<td align=”center”> <input type=”text” name=”cqty” size=”3″ maxlength=”3″ > </td>

<tr/>

<tr>

<td> C programming </td>

<td align=”center”> <input type=”text” name=”cqty” size=”3″ maxlength=”3″ > </td>

<tr/>

<tr>

<td colspan=”2″ align=”center”> <input type=”submit” value=”submit order” > </td>

<tr/>

<table/>

<form/>

2 . دستورات زیر را در فایل ch4-2.php تایپ و ذخیره کنید:

<html>

<body>

php?>

;sum = $_post[‘pasqty’] + $_post[‘vcqty’] + $_post[‘cqty’]$

price = $_post[‘pasqty’] *3000 + $_post[‘vcqty’] *2500 + $_post[‘cqty’]*4000 $

;'<echo ‘<br> You ordered as follow:’. ‘<br

;'<echo ‘Pascal:’ .$_Post[‘pasqty’]. ‘<br

;'<echo ‘Visual c++:’ .$_Post[‘vcqty’]. ‘<br

;'<echo ‘C programming:’ .$_Post[‘cqty’]. ‘<br> <br

;'<echo ‘total quantity:’ .$sum. ‘<br

;'<echo ‘total price:’ .$price. ‘<br> <br

if($sum < 10)

;discount = 0 $

elseif ($sum >= 10 && $sum <=49)

;discount = $price * 5 / 100 $

elseif ($sum >= 50 && $sum <=99)

;discount = $price * 10 / 100 $

else

;discount = $price * 15 / 100 $

echo ‘discount= ‘.$discount

echo ‘, payment= ‘.($price – $discount)

<?

<body/>

<html/>

3 . مرورگر را اجرا کرده در نوار آدرس آن  را تایپ کنید و کلید Enter را فشار دهید. فرمی مانند شکل زیر ظاهر می شود آن را پر کنید و دکمه Submit Order را کلیک کنید . اکنون فرم پردازش می شود و نتیجه آن ظاهر می گردد.

Screenshot (4038)

اگر قرار بود در پردازش فرم ، به جای دستور elseif از if های تو در تو استفاده شود لیست برنامه پردازش کد به صورت

زیر نوشته می شد:

<html>

<body>

php?>

;sum = $_post[‘pasqty’] + $_post[‘vcqty’] + $_post[‘cqty’]$

price = $_post[‘pasqty’] *3000 + $_post[‘vcqty’] *2500 + $_post[‘cqty’]*4000 $

;'<echo ‘<br> You ordered as follow:’. ‘<br

;'<echo ‘Pascal:’ .$_Post[‘pasqty’]. ‘<br

;'<echo ‘Visual c++:’ .$_Post[‘vcqty’]. ‘<br

;'<echo ‘C programming:’ .$_Post[‘cqty’]. ‘<br> <br

;'<echo ‘total quantity:’ .$sum. ‘<br

;'<echo ‘total price:’ .$price. ‘<br> <br

if($sum < 10)

;discount = 0 $

else

}

(if ($sum >= 10 && $sum <=49

;discount = $price * 5 / 100 $

else

if ($sum >= 50 && $sum <=99)

;discount = $price * 10 / 100 $

else

{

;discount = $price * 15 / 100 $

echo ‘discount= ‘.$discount

echo ‘, payment= ‘.($price – $discount)

<?

<body/>

<html/>

همانطور که می بینید این لیست نسبت به لیست قبلی شلوغ تر بوده دنبال کردن برنامه دشوار تر است به عبارت دیگر

میزان قابلیت خوانایی برنامه پایین است.

سوم :دستور  switch

اگر شرطی دارای دو مقدار باشد برای تصمیم گیری بر اساس نتیجه آن شرط از دستور if استفاده می شود ، اما اگر شرط بیش از دو داشته باشد می توان از switch استفاده کرد . در if شرط می تواند ارزش true یا false داشته باشد . اما در switch

شرط می تواند هر مقداری داشته باشد . کاربرد آن به صورت زیر می باشد :

در این دستور اگر مقدار variable برابر با مقدار 1 باشد دستورات مربوط به آن اجرا می شوند و دستور break موجب

خروج از ساختار switch  می شود . اگر برابر با مقدار 2 باشد دستورات مربوط به آن اجرا شده دستور break  موجب خروج

از ساختار swtich می شود . اگر هیچ کدام از مقادیر ذکر شده درست نباشد دستورات بعد از default اجرا می شوند.

چنانچه ساختار switch فاقد بخش default باشد و مقدار variable با هیچ یک از مقادیر 2،1 و غیره برابر نباشد .

هیچ دستوری در ساختار switch اجرا نمی گردد.

مثال:

طراحی صفحه ای که از مراجعه کننده سوال می کند چگونه این صفحه را پیدا کرده است . سپس انتخاب او را در صفحه دیگری نمایش می دهد.

مراحل طراحی صفحه

1 دستورات زیر را در فایل ch4-3.html تایپ و در پوشه ی www ذخیره کنید:

 

<form action=”ch4-3.php” method= post>

<table border=0>

<tr bgcolor=# cccccc>

<td width = 150> book name </td>

<td width = 15> quantity </td>

<tr/>

<tr>

<td> pascal </td>

<td align=”center”> <input type=”text” name=”pasqty” size=”3″ maxlength=”3″ > </td>

<tr/>

<tr>

<td> visual c++ </td>

<td align=”center”> <input type=”text” name=”cqty” size=”3″ maxlength=”3″ > </td>

<tr/>

<tr>

<td> C programming </td>

<td align=”center”> <input type=”text” name=”cqty” size=”3″ maxlength=”3″ > </td>

<tr/>

<tr>

<td colspan=”2″ align=”center”> <input type=”submit” value=”submit order” > </td>

<tr/>

<table/>

<form/>

همانطور که مشاهده می کنید با دستور select یک لیست باز شونده با چهار گزینه انتخاب شده است که نامش find

است هر گزینه با یک مقدار مشخص می شود. مقدار گزینه اول برابر با “a” مقدار گزینه دوم برابر با “b” مقدار گزینه سوم

برابر با “c” و مقدار گزینه چهارم برابر با “d” است. بنابراین وقتی کاربر گزینه ای را انتخاب کرد و دکمه submit Order را

کلیک نمود یکی از مقادیر “a” , “b”, “c”, یا “d” در متغیر find$ قرار می گیرد که در برنامه ch4-3.php قابل دستیابی

است.

2 دستور زیر را در فایل ch4-3.php تایپ و ذخیره کنید.

 

<html>

<body>

php?>

;sum = $_post[‘pasqty’] + $_post[‘vcqty’] + $_post[‘cqty’]$

price = $_post[‘pasqty’] *3000 + $_post[‘vcqty’] *2500 + $_post[‘cqty’]*4000 $

;'<echo ‘<br> You ordered as follow:’. ‘<br

;'<echo ‘Pascal:’ .$_Post[‘pasqty’]. ‘<br

;'<echo ‘Visual c++:’ .$_Post[‘vcqty’]. ‘<br

;'<echo ‘C programming:’ .$_Post[‘cqty’]. ‘<br> <br

;'<echo ‘total quantity:’ .$sum. ‘<br

;'<echo ‘total price:’ .$price. ‘<br> <br

if($sum < 10)

;discount = 0 $

else

}

(if ($sum >= 10 && $sum <=49

;discount = $price * 5 / 100 $

else

if ($sum >= 50 && $sum <=99)

;discount = $price * 10 / 100 $

else

{

;discount = $price * 15 / 100 $

echo ‘discount= ‘.$discount

echo ‘, payment= ‘.($price – $discount)

<?

<body/>

<html/>

همانطور که مشاهده می کنید یک دستور switch مقدار متغیر find را به صورت POST[find]) _$) switch بررسی

می کند و براساس مقدار این متغیر ، پیامی را چاپ می نماید .

3 مرور گر را اجرا کرده در نوار آدرس آن https://localhost/ch4/ch4-3.html را تایپ کرده کلید Enter را فشار دهید.

تا صفحه ای ظاهر گردد. فلش کنار لیست باز شونده را کلیک کنید تا لیست گزینه های آن ظاهر شود.

یکی از گزینه ها را انتخاب کرده دکمه Submit Order را کلیک کنید تا نتیجه انتخاب را ببینید.

برگرفته از :

کتاب آموزش گام به گام  (PHP)

دکتر عین الله جعفر نژاد قمی

پاسخ به سوال دوستان :

شاید تاکنون به این فکر کرده باشین که چرا باید برای کسب و کار خود وبسایت داشته باشین ؟

دلیل اینکه می‌گوییم باید سایت داشته باشید این آمار است. توجه کنید که ۸۱٪ از افراد قبل از

تصمیم گیری در مورد خرید و فروش در یک کسب وکار یا خدمات، در اینترنت تحقیق می کنند.

یعنی ۲۵.۹۲ میلیون نفر هستند که مشاغل را به صورت آنلاین جستجو می کنند. با این وجود ۴۶% کسب و کارها فکر می‌کنند نیاز به وب سایت ندارند.

توجه داشته باشید که جهان به سمت دیجیتالی شدن پیش می‌رود و نداشتن وب سایت

برای یک شرکت یا هر کسب و کاری، به منزلۀ جا ماندن از گردونۀ روزگار است.

برای اطلاعات بیشتر با همکاران ما در شرکت آراز پردازش در ارتباط باشید

آدرس ایمیل:  info@arazpardazesh.com

اینستاگرام شرکت:   https://instagram.com/araz_pardazesh_kla

تماس با ما:     https://arazpardazesh.com/contact

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

نوزده + پانزده =