วิธีการรับค่าจาก checkbox ภาษา HTML หลายๆ อันด้วยภาษา PHP สามารถทำได้โดยการกำหนดตัวแปร checkbox ให้เป็นชนิด Array โดยมีขั้นตอนการเขียนโปรแกรมดังนี้
1. สร้าง Form Checkbox สำหรับให้ผู้ใช้งานติ๊กเลือก
<form action="<?=$_SERVER['PHP_SELF'];?>" method="POST">
สีที่ชอบ
<br/><input type="checkbox" value="แดง" name="color[]"> แดง
<br/><input type="checkbox" value="น้ำเงิน" name="color[]"> น้ำเงิน
<br/><input type="checkbox" value="ขาว" name="color[]"> ขาว
<br/><input type="checkbox" value="ดำ" name="color[]"> ดำ
<br/><input type="submit">
</form>
ตัวแปร color[] ของ checkbox ทั้งหมดอยู่ในรูปแบบของ Array ทำให้เราสามารถรับข้อมูลจากการติ๊กเลือกหลายๆ อันของผู้ใช้งานได้
2. ส่วนของภาษา PHP
<?php
isset( $_POST['color'] ) ? $color = $_POST['color'] : $color = array();
if( !empty( $color ) ) {
echo "สีที่ชอบ คือ ";
foreach( $color as $v ) {
echo $v." ";
}
}
?>
มีการรับ และเช็คค่าตัวแป $color กรณีมีค่า โปรแกรมจะทำการวนลูปด้วยคำสั่ง foreach จากตัวแปร $color ที่รับค่าสีที่ผู้ใช้งานติ๊กเลือกผ่าน Form HTML และแสดงผลข้อมูลออกมาด้วยคำสั่ง echo
ตัวอย่าง โปรแกรมแบบเต็ม
<form action="<?=$_SERVER['PHP_SELF'];?>" method="POST">
สีที่ชอบ
<br/><input type="checkbox" value="แดง" name="color[]"> แดง
<br/><input type="checkbox" value="น้ำเงิน" name="color[]"> น้ำเงิน
<br/><input type="checkbox" value="ขาว" name="color[]"> ขาว
<br/><input type="checkbox" value="ดำ" name="color[]"> ดำ
<br/><input type="submit">
</form>
<?php
isset( $_POST['color'] ) ? $color = $_POST['color'] : $color = array();
if( !empty( $color ) ) {
echo "สีที่ชอบ คือ ";
foreach( $color as $v ) {
echo $v." ";
}
}
?>