การใช้ PHP ทำเครื่องคิดเลขอย่างง่าย
1. สร้าง From ขึ้นมาก่อน ฟอร์ม ที่เีีราต้องากาขึ้นมาซึ่งประกอบด้วย Text Field 2 อันหน้าและหลีง และมี List/menu อยู่ตรงกลาง และ Button เพื่อการ ส่งค่า
2. ใส่ เครื่องหมายทางคณิตศาสตร์ ใน List/menu
3. จากนั้นอย่าืลืมกำหนด action ให้ ฟอร์ม ด้วยละครับ ตย. ของผมกำหนดให้ไปที่ calcu.php method="post"(ผมทำเครื่องคิดเลขแบบแสดงผลในหนาเดียว นะครับ เพราะ ฉะนั้น หน้านี้จึงมี ชื่อว่าcalcu.php เช่นกัน)
4. จากนั้นกำหนดชื่อ ของ Text Field 2 ทั้ง 2 อัน และ List/menu โดย Text Field อันแรก ผมให้ใช้ชื่อว่า num 1 และ Text Field อันที่ 2 ก็ชื่อให้ชื่อ num 2 List/menu ให้ชื่อว่า operator
รูปแบบนี้ถ้าเขียนโดยไม่ใช้ ตัวช่วยของ Dreamweaver ก็จะได้ว่า
<form name="form1" method="post" action="calcu.php">
<input type="text" name="num1">
<select name="operator">
<option value="+">+</option>
<option value="-">-</option>
<option value="*">*</option>
<option value="/">/</option>
</select>
<input type="text" name="num2">
<input type="submit" name="Submit" value="Submit">
</form>
จากนั้นเิริ่ม เปิด แท็ก php ได้เลยครับ
<?
}
$num1 = $_POST['num1']; //รับ num 1 แบบ post
$operator = $_POST['operator']; //รับ operator แบบ post
$num2 = $_POST['num2']; //รับ num 1 แบบ post
}
?>
พิมพ์ ข้่อความ ด้านบน นี้เพื่อ การ รับ ข้อมูลตัวแปล
จากนั้นนำ ข้อมูลตัวแปล นั้นมา ใช้ งานด้วยการ นำ code ต่อจากนี้ ไปวางในล่าง (แต่ยังอยู่ใน ปีกกา เปิดปีด นะครับ)
if($operator == "+") // ถ้า operator คือ +
echo "$num1 + $num2 = ".($num1+$num2); // แสดงผล num1 + num2
elseif($operator == "-") // แสดง ผล คำตอบ ถ้า เป็น -
echo "$num1 - $num2 = ".($num1-$num2); // แสดงผล num1 - num2
elseif($operator == "*") // แสดง ผล คำตอบ ถ้า เป็น *
echo "$num1 * $num2 = ".($num1*$num2); // แสดงผล num1 - num2
elseif($operator == "/") // แสดง ผล คำตอบ ถ้า เป็น /
echo "$num1 / $num2 = ".($num1/$num2); // แสดง ผล คำตอบ
รูปแบบ Code ทั้งหมด
<form name="form1" method="post" action="calcu.php">
<input type="text" name="num1">
<select name="operator">
<option value="+">+</option>
<option value="-">-</option>
<option value="*">*</option>
<option value="/">/</option>
</select>
<input type="text" name="num2">
<input type="submit" name="Submit" value="Submit">
</form>
<?
{
$num1 = $_POST['num1'];
$operator = $_POST['operator'];
$num2 = $_POST['num2'];
if($operator == "+")
echo "$num1 + $num2 = ".($num1+$num2);
elseif($operator == "-")
echo "$num1 - $num2 = ".($num1-$num2);
elseif($operator == "*")
echo "$num1 * $num2 = ".($num1*$num2);
elseif($operator == "/")
echo "$num1 / $num2 = ".($num1/$num2);
}
?>
แสดงผล
>>>
แต่ โค้ด นี้ยังมีปัญหา อยู่ คือถ้าไม่ พิมพ์ อะไรเลย แล้วกด submit จะได้
เพราะ ฉะนั้น เรามาเขียน เช็ค ตัวแปล และ ค่้าว่าง เพื่อ กัน กรณี ที่มีคน มักง่าย ไม่ใส่อะไรเลยแล้วกด submit กันมีกว่า ครับ
if(isset($_POST['num1']) && !empty($_POST['num1']) && !empty($_POST['num2']))
แค่นี้ก็จะไม่เกิดเหตุการนั้นแล้วล่ะครับ
ลอง copy code นี้ไป ลองเล่นดูได้เลยครับ
<form name="form1" method="post" action="calcu.php">
<input type="text" name="num1">
<select name="operator">
<option value="+">+</option>
<option value="-">-</option>
<option value="*">*</option>
<option value="/">/</option>
</select>
<input type="text" name="num2">
<input type="submit" name="Submit" value="Submit">
</form>
<?
if(isset($_POST['num1']) && !empty($_POST['num1']) && !empty($_POST['num2']))
{
$num1 = $_POST['num1'];
$operator = $_POST['operator'];
$num2 = $_POST['num2'];
if($operator == "+")
echo "$num1 + $num2 = ".($num1+$num2);
elseif($operator == "-")
echo "$num1 - $num2 = ".($num1-$num2);
elseif($operator == "*")
echo "$num1 * $num2 = ".($num1*$num2);
elseif($operator == "/")
echo "$num1 / $num2 = ".($num1/$num2);
}
?>