สอบถามเรื่องการใช้ checkbox แบบ array

สำหรับผู้ที่ เริ่มต้น Programming - PHP มีอะไร แนะนำ หรือข้อสงสัยต้องบอร์ด นี้ คนที่มีความรู้ แบ่งปันคนอื่นบ้างนะ ปัญหาการเขียนโปรแกรม แบบ OOP Session Cookies php network

Moderators: mindphp, ผู้ดูแลกระดาน

ny2003
PHP Newbie
PHP Newbie
Posts: 2
Joined: 25/12/2017 3:23 am

สอบถามเรื่องการใช้ checkbox แบบ array

Post by ny2003 »

เป็นcheckboxแบบที่อาจารย์เช็คอ่ะค่ะ พอเราติ้กตรงชื่อนักเรียนแล้วกด submit จะส่งค่าที่ติ้กไปใช้ในการ insert เวลาในการเข้าเรียน แต่งงตรงการ insert เพราะต้องการเพิ่มข้อมูล id ของนักเรียนแต่ละคนตามที่เราติ้กด้วยอ่ะค่ะ แล้ว id ตรงนี้จะเพิ่มด้วยอะไรใน VALUE คะ? $sql1=" INSERT INTO learn ('id_learn','check_time','id_s') VALUE (NULL,$date_time, :?: )"; งงว่ามันจะทำงานยังไง เพิ่มข้อมูลตาม id ยังไง เพราะเราไม่ได้เอาค่าตามการ login แต่เป็นค่าตาม checkbox(ตามความเข้าใจของเรา)

Code: Select all

 $sql = "SELECT student.id_s,student.firstname_s,student.lastname_s,student.nickname_s,orderdetail.id_course,orderdetail.id_sec FROM student INNER JOIN orderdetail ON student.id_s = orderdetail.id_s WHERE orderdetail.id_sec=1301" ;
              $query = mysqli_query($dbcon, $sql);

        $re= mysqli_query($dbcon, $sql);
        $num_rows= mysqli_num_rows($re);
        echo "<br><br>ค้นพบข้อมูลทั้งหมด $num_rows record<br><br>";
        
        if($num_rows>0){
      
 while ($row = mysqli_fetch_row($re)) {

         echo "<tr>";
     echo "<th scope=row>$row[0]</th>";
     
     echo "<td>$row[1]</td>";
     echo "<td>$row[2]</td>";
     echo "<td>$row[3]</td>";
     echo "<td>$row[4]</td>";
     echo "<td>$row[5]</td>"; ?>
    
  <td><input type="checkbox" name="check[]" value=<?php $row[0]?>></td>
      
      <?PHP
      echo "</tr>"; 
    
      } 
        
         }  
             
         
        ?>
       </tbody>
    </table>
<input type="submit" name="submit" value="submit">
      <?php
  if(isset($_POST['submit'])){
       date_default_timezone_set("Asia/Bangkok");
      $date_time=date("Y-m-d H:i:s");
      $sql1=" INSERT INTO learn ('id_learn','check_time','id_s') VALUE (NULL,$date_time,??)";
  }

แนะนำด้วยค่ะ :cry:
User avatar
THCodingFree
PHP Newbie
PHP Newbie
Posts: 5
Joined: 25/12/2017 7:34 pm
Contact:

Re: สอบถามเรื่องการใช้ checkbox แบบ array

Post by THCodingFree »

แก้ไข 2 จุดครับ
---- HTML----
<input type="checkbox" name="check[<?php $row[0]?>]" value="1">


---- PHP -----
$arr = $_POST['check'];
foreach ($arr as $key => $value) {
//echo "Key: $key; Value: $value<br />\n";
$numID = "0";
if( $arr[$key]=="1" ){
$numID = "1";
}

$sql1=" INSERT INTO learn ('id_learn','check_time','id_s') VALUE (NULL,$date_time,$numID)";

}

พอจะเข้าใจคอนเซ็ปไหมครับ
ny2003
PHP Newbie
PHP Newbie
Posts: 2
Joined: 25/12/2017 3:23 am

Re: สอบถามเรื่องการใช้ checkbox แบบ array

Post by ny2003 »

เข้าใจค่ะ แต่สงสัยว่าจำเป็นต้อง if(isset($_POST['submit'])) มั้ยคะ? คืออยากให้ติ้กนักเรียนครบแล้วกดปุ่มค่ามันถึงจะเพิ่ม แล้วจำเป็นต้องทำ form เพื่อให้มี method=post ไหมคะ? ถ้ามีคือไม่รู้จะแทรกตรงไหนเพราะส่วนของการแสดงผลเราทำเป็นลูป พอใส่แล้วมันก็ขึ้นเป็นสีแดงๆไม่ใช่สีเหลืองครอบคำว่า form
User avatar
THCodingFree
PHP Newbie
PHP Newbie
Posts: 5
Joined: 25/12/2017 7:34 pm
Contact:

Re: สอบถามเรื่องการใช้ checkbox แบบ array

Post by THCodingFree »

ผมตอบตามที่ถามนะ ผมไม่เห็น Code ทั้งหมด

แต่สงสัยว่าจำเป็นต้อง if(isset($_POST['submit'])) มั้ยคะ?
- อันนี้ตรวจสอบว่า ได้ submit form มาไหม

คืออยากให้ติ้กนักเรียนครบแล้วกดปุ่มค่ามันถึงจะเพิ่ม
- ใช้ JavaScript ตรวจสอบ Form

แล้วจำเป็นต้องทำ form เพื่อให้มี method=post ไหมคะ?
- form มี 2 method คือ GET กะ POST เป็นการกำหนดรูปแบบการส่งข้อมูล

ถ้ามีคือไม่รู้จะแทรกตรงไหนเพราะส่วนของการแสดงผลเราทำเป็นลูป พอใส่แล้วมันก็ขึ้นเป็นสีแดงๆไม่ใช่สีเหลืองครอบคำว่า form
<form action="" method="post">
....
....
</form>

ถ้ายัง งงๆอยู่ ถามในเพจผมได้ครับ จะตอบง่ายกว่านี้ fb.me/THCoding
Post Reply
  • Similar Topics
    Replies
    Views
    Last post

Return to “Programming - PHP”

Who is online

Users browsing this forum: No registered users and 12 guests