A-AA+then

if checkbox ว่าเลือกหรือไม่เลือกเพื่อ update ต้องทำไงค่ะ

1,948
สวัสดีค่ะคุณ goragod ขอรบกวนถามปัญหาเรื่องการ ดึงข้อมูลออกมาจากฐานข้อมูล แล้วกำหนด id ไว้ใน checkbox เมื่อทำการเลือกจะมีการ update ค่าที่กำหนดไว้ดังนี้ค่ะ

$date_send = date('Y-m-d H:i:s');
$send = 'S'; 

if($Submit) //เมื่อกดปุ่ม submit
  {
     $sect=$_POST["sect"];
      if (isset($sect)) 
            {
                  for ($n=0; $n<count($sect); $n++)
                    {
                           if($sect[$n] != '' )  //ต้องการ if ตรงนี้ก่อนว่าเลือกหรือไม่เลือก  แต่ตัวนี้ดักไม่ได้ค่ะ
                              {
                              $query_t = "UPDATE authorized_form SET date_send='$date_send', send='$send' WHERE id_authorform= '$sect[$n]'";
               $exe_re = odbc_exec($conn,$query_t);
               echo  $query_t."<br>
";
                               }
                     }
            }
}

จากโค้ดด้านบนต้องการตรวจเช็คดูก่อนว่ามีการเลือกหรืไม่เลือก checkbox จะต้อง if ว่าอย่างไรช่วยทีค่ะ เพราะโค้ดนี้ update ให้หมดเลยค่ะ โดยไม่ได้เลือกก็ update ให้

2 ความคิดเห็น

ปกติแล้ว checkbox ที่ถูกส่งมา จะเป็นแค่ checkbox อันที่ถูกเลือกเท่านั้นนี่ครับ อันที่ไม่ถูกเลือกจะไม่ส่งมาอยู่แล้ว ดังนั้นจึงไม่น่ากังวลว่า checkbox ถูกเลือกหรือไม่ตอน submit

ปัญหามันอาจอยู่ที่การเขียน query ไม่ถูกต้องมากกว่ามั้งครับ คือไม่ได้เขียน query เพื่ออัปเดทเฉพาะค่าที่ส่งมา เช่น

UPDATE ...... WHERE id_authorform IN($ids)

โดยที่ $ids เป็น array ของ เช็คบ๊อกซ์ตัวที่ถูกเลือกเช่น หากเลือก ตัวที่ 0 และ 2 ไว้ก็จะได้ $ids = '0,2' เป็นต้น

ลองไปประยุกต์ดูครับ หรือ อ่าน checkbox เพิ่มเติม
1

ขอบคุณ คุณ goragod สำหรับคำแนะนำดี  ๆ และ How to ที่ช่วยในการทำงาน ลองนำมาประยุกต์ ทำได้แล้วค่ะ 

2
^