Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,037

HOME > PHP > PHP Forum > ขอคำแนะนำ การเพิ่มเรคคอร์ดตามการติ๊ก checkbox โดยใช้ชื่อเดิม ค่ะ



 

ขอคำแนะนำ การเพิ่มเรคคอร์ดตามการติ๊ก checkbox โดยใช้ชื่อเดิม ค่ะ

 



Topic : 136281



โพสกระทู้ ( 27 )
บทความ ( 0 )



สถานะออฟไลน์




ขอคำแนะการเพิ่มข้อมูลชนิดตัวอย่างค่ะ โดยสามารถ ติ๊ก ตัวอย่างหลายชนิด ให้เพิ่มข้อมูล ชื่อ-นามสกุล เพศ อายุ และชนิดตัวอย่างแรก แล้วเพิ่ม ชื่อ - สกุล เพศ อายุ และชนิดตัวอย่างที่สอง จนจบ 3 ชนิดตัวอย่างของผู้ป่วยคนแรกค่ะ จากนั้น เพิ่มตัวอย่างของผู้ป่วยคนที่ 2 ต่อ ตามภาพค่ะ

ภาพตัวอย่างการเพิ่มข้อมูล

Code (PHP)show.php
<div class="card-body">
                                <div class="form-group">
                                    <div class="form-row">
                                        <div class="col-md-12 mb-12">
                                            <label for="validationDefault01">ชนิดตัวอย่าง&emsp;</label></br>
                                            <div class="form-check form-check-inline">
                                                <input class="form-check-input" type="checkbox" value="Urine" data-skip-name="true" data-name="sample_type[]">
                                                <label class="form-check-label" for="inlineCheckbox1">Urine</label>
                                            </div>
                                            <div class="form-check form-check-inline">
                                                <input class="form-check-input" type="checkbox" value="Stool" data-skip-name="true" data-name="sample_type[]">
                                                <label class="form-check-label" for="inlineCheckbox2">Stool</label>
                                            </div>
                                            <div class="form-check form-check-inline">
                                                <input class="form-check-input" type="checkbox" value="Serum" data-skip-name="true" data-name="sample_type[]">
                                                <label class="form-check-label" for="inlineCheckbox3">Serum</label>
                                            </div>
                                            <div class="form-check form-check-inline">
                                                <input class="form-check-input" type="checkbox" value="Plasma" data-skip-name="true" data-name="sample_type[]">
                                                <label class="form-check-label" for="inlineCheckbox1">Plasma</label>
                                            </div>
                                        </div>
                                        <div class="col-md-6 mb-3">
                                            <label for="validationDefault02">ชื่อ - นามสกุล ผู้ป่วย</label>
                                            <input type="text" class="form-control" id="" data-skip-name="true" data-name="fullname[]" value="">
                                        </div>
                                        <div class="col-md-3 mb-3">
                                            <label for="validationDefault02">เพศ</label><br>
                                            <div class="form-check-inline">
                                                <input class="form-check-input" type="radio" data-name="sex[]" id="exampleRadios1" value="M" checked>
                                                <label class="form-check-label" for="exampleRadios1">
                                                    ชาย
                                                </label>
                                            </div>
                                            <div class="form-check-inline">
                                                <input class="form-check-input" type="radio" data-name="sex[]" id="exampleRadios2" value="F">
                                                <label class="form-check-label" for="exampleRadios2">
                                                    หญิง
                                                </label>
                                            </div>

                                        </div>
                                        <div class="col-md-3 mb-3">
                                            <label for="validationDefault01">อายุ&emsp;</label>
                                            <input type="text" class="form-control" id="" data-skip-name="true" data-name="age[]" placeholder="" value="">
                                        </div>
                                    </div>


                                    <div class="col-md-12" style="margin-top:24px;" align="right">
                                        <button id="remove-btn" onclick="$(this).parents('.items').remove()" class="btn btn-danger">ลบ</button>
                                    </div>
                                </div>
                            </div>


insert.php
<?php
ini_set('display_errors', 1);
error_reporting(~0);

$connect = new PDO("mysql:host=localhost;dbname=lab", "root", "");

if (isset($_POST["send_id"])) {
    $send_id = $_POST["send_id"];
    $sample_type = $_POST["sample_type"];
    $fullname = $_POST["fullname"];
    $age = (isset($_POST['age'])) ? $_POST["age"] : '';

    $query = "";

    for ($i = 0; $i < count($_POST["sample_type"]); $i++) {

        $query .= "
  INSERT INTO lab_detail set
  send_id = '$send_id', 
  sample_type = '$sample_type[$i]', 
  fullname='$fullname[$i]',
  sex =  '" . $_POST['programming_languages'][$i] . "',
  age = '$age[$i]', 
  address='$address[$i]'  
  ";
    }
    $statement = $connect->prepare($query);
    if ($statement->execute()) {
        echo '
  <div class="alert alert-success">
   Data Successfully Inserted
  </div>
  ';
    }
}
?>


ต้องทำยังค่ะ



Tag : PHP, MySQL, Ajax, jQuery, XAMPP









ประวัติการแก้ไข
2021-07-22 13:33:08
Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2021-07-21 15:22:56 By : funny View : 653 Reply : 8
 

 

No. 1



โพสกระทู้ ( 296 )
บทความ ( 0 )



สถานะออฟไลน์


DB:
แสดงว่าคุณออกแบบฐานข้อมูลแบบ All in One ลองศึกษา RDD

Front:
การควบคุมส่วนของ User interactive ใช้ JS
้html ควรเอามาทั้ง form ไม่ใช่แค่ card






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2021-07-21 17:55:35 By : TheGreatGod_of_Death
 


 

No. 2



โพสกระทู้ ( 296 )
บทความ ( 0 )



สถานะออฟไลน์


เพิ่มเติมเท่าที่แนะได้ (ตามข้อมูลที่ให้มา)

ถ้ายืนยันที่จะใช้ตารางโดด และ
ถ้าหน้าบ้านไม่ได้ใช้ form แต่ dynamic input cloning และ
ฝั่ง server ตั้งรับด้วย POST loop (เหมือนที่ทำมา) และ
สมมติปัญหาคือไม่สามารถส่งค่าไป INSERT DB ได้
่...ลองพึ่ง jQuery รุกด้วยเมธอด serializeArray
https://api.jquery.com/serializearray/
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2021-07-22 00:44:25 By : TheGreatGod_of_Death
 

 

No. 3



โพสกระทู้ ( 27 )
บทความ ( 0 )



สถานะออฟไลน์


เมื่อวาน พายุเข้าค่ะ เน็ตมีปัญหา เลยไม่ได้ตอบทันทีนะคะ

อัพข้อมูลเพิ่มเติมส่วน โค้ด เต็มนะคะ

labsend

show.php
<?php
include 'config.php';
?>

<!doctype html>
<html lang="en">

<head>
    <meta charset="utf-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
    <title>
        เพิ่มข้อมูล
    </title>
    <meta content='width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0, shrink-to-fit=no' name='viewport' />
    <!--     Fonts and icons     -->
    <link href="https://fonts.googleapis.com/css?family=Montserrat:400,700,200" rel="stylesheet" />
    <link href="https://maxcdn.bootstrapcdn.com/font-awesome/latest/css/font-awesome.min.css" rel="stylesheet">
    <!-- CSS Files -->

    <!-- นำเข้า  CSS จาก Bootstrap -->
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.1.3/css/bootstrap.css">

    <!-- นำเข้า  CSS จาก me -->
    <link rel="stylesheet" href="me2.css">
    <!-- นำเข้า  Javascript จาก  Jquery -->
    <script type="text/javascript" src="jquery-3.5.1.js"></script>
    <script src="repeater.js" type="text/javascript"></script>

</head>

<body class="">
    <?php
    $sql3 = "select * from provinces";
    $query3 = mysqli_query($conn, $sql3);
    ?>
    <br>

    <div class="container">
        </br>

        <form method="post" id="repeater_form" enctype="multipart/form-data">
            <div class="form-group">
                <label for="validationDefault01">ลำดับ&emsp;</label>
                <input type="text" class="form-control" id="send_id" name="send_id" placeholder="" value="">
            </div>
            <div id="repeater">
                <div class="repeater-heading" align="right">
                    <button type="button" class="btn btn-primary repeater-add-btn">เพิ่มข้อมูล</button>
                </div></br>
                <div class="clearfix"></div>
                <div class="items" data-group="programming_languages">
                    <div class="item-content">
                        <div class="card">
                            <div class="card-header text-white " style="background : #64C5DB;">
                                เพิ่มข้อมูล
                            </div>
                            <div class="card-body">
                                <div class="form-group">
                                    <div class="form-row">
                                        <div class="col-md-12 mb-12">
                                            <label for="validationDefault01">ชนิดตัวอย่าง&emsp;</label></br>
                                            <div class="form-check form-check-inline">
                                                <input class="form-check-input" type="checkbox" id="inlineCheckbox1" value="Urine" data-skip-name="true" data-name="sample_type[]">
                                                <label class="form-check-label" for="inlineCheckbox1">Urine</label>
                                            </div>
                                            <div class="form-check form-check-inline">
                                                <input class="form-check-input" type="checkbox" id="inlineCheckbox2" value="Stool" data-skip-name="true" data-name="sample_type[]">
                                                <label class="form-check-label" for="inlineCheckbox2">Stool</label>
                                            </div>
                                            <div class="form-check form-check-inline">
                                                <input class="form-check-input" type="checkbox" id="inlineCheckbox3" value="Serum" data-skip-name="true" data-name="sample_type[]">
                                                <label class="form-check-label" for="inlineCheckbox3">Serum</label>
                                            </div>
                                            <div class="form-check form-check-inline">
                                                <input class="form-check-input" type="checkbox" id="inlineCheckbox1" value="Plasma" data-skip-name="true" data-name="sample_type[]">
                                                <label class="form-check-label" for="inlineCheckbox1">Plasma</label>
                                            </div>
                                            <div class="form-check form-check-inline">
                                                <input class="form-check-input" type="checkbox" id="inlineCheckbox2" value="Sputum" data-skip-name="true" data-name="sample_type[]">
                                                <label class="form-check-label" for="inlineCheckbox2">Sputum</label>
                                            </div>
                                            <div class="form-check form-check-inline">
                                                <input class="form-check-input" type="checkbox" id="inlineCheckbox3" value="Thoat swab" data-skip-name="true" data-name="sample_type[]">
                                                <label class="form-check-label" for="inlineCheckbox3">Thoat swab</label>
                                            </div>
                                            <div class="form-check form-check-inline">
                                                <input class="form-check-input" type="checkbox" id="inlineCheckbox1" value="Nasophyngel swab" data-skip-name="true" data-name="sample_type[]">
                                                <label class="form-check-label" for="inlineCheckbox1">Nasophyngel swab</label>
                                            </div>
                                            <!-- ลบ checkbox บางส่วน เพื่อไม่ให้โค้ด ยาว เกินไปนะคะ-->

                                        </div>
                                        <div class="col-md-6 mb-3">
                                            <label for="validationDefault02">ชื่อ - นามสกุล ผู้ป่วย</label>
                                            <input type="text" class="form-control" id="" data-skip-name="true" data-name="fullname[]" value="">
                                        </div>
                                        <div class="col-md-3 mb-3">
                                            <label for="validationDefault02">เพศ</label><br>
                                            <div class="form-check-inline">
                                                <input class="form-check-input" type="radio" data-name="sex[]" id="exampleRadios1" value="M" checked>
                                                <label class="form-check-label" for="exampleRadios1">
                                                    ชาย
                                                </label>
                                            </div>
                                            <div class="form-check-inline">
                                                <input class="form-check-input" type="radio" data-name="sex[]" id="exampleRadios2" value="F">
                                                <label class="form-check-label" for="exampleRadios2">
                                                    หญิง
                                                </label>
                                            </div>

                                        </div>
                                        <div class="col-md-3 mb-3">
                                            <label for="validationDefault01">อายุ&emsp;</label>
                                            <input type="text" class="form-control" id="" data-skip-name="true" data-name="age[]" placeholder="" value="">
                                        </div>
                                    </div>

                                    <div class="form-row">

                                        <div class="col-md-4 mb-3">
                                            <label for="validationDefault02">ป่วยที่บ้านเลขที่</label>
                                            <input type="text" class="form-control" id="" data-skip-name="true" data-name="address[]" placeholder="" value="">
                                        </div>
                                        <div class="col-md-3 mb-3">
                                            <label for="validationDefault02">จังหวัด</label>
                                            <select data-skip-name="true" data-name="province[]" id="provinces" class="form-control">
                                                <option value="" selected disabled>กรุณาเลือกจังหวัด</option>
                                                <?php foreach ($query3 as $value) { ?>
                                                    <option value="<?= $value['id'] ?>"><?= $value['name_th'] ?></option>
                                                <?php } ?>

                                            </select>
                                        </div>
                                        <div class="col-md-3 mb-3">
                                            <label for="amphure">อำเภอ</label>
                                            <select data-skip-name="true" data-name="district[]" id="amphures" class="form-control">
                                                <option value="">เลือกอำเภอ</option>
                                            </select>
                                        </div>
                                        <div class="col-md-2 mb-3">
                                            <label for="district">ตำบล</label>
                                            <select data-skip-name="true" data-name="sub_district[]" id="districts" class="form-control">
                                                <option value="">เลือกตำบล</option>
                                            </select>
                                        </div>
                                    </div>

                                    <div class="col-md-12" style="margin-top:24px;" align="right">
                                        <button id="remove-btn" onclick="$(this).parents('.items').remove()" class="btn btn-danger">ลบ</button>
                                    </div>
                                </div>
                            </div>
                        </div>
                    </div></br></br>
                </div>
            </div>
            <div class="clearfix"></div>
            <div class="form-group" align="center">
                <br /><br />
                <input type="submit" name="insert" class="btn btn-success" value="ตกลง" />
                <input name="Back" type="button" class="btn btn-danger" value=" ยกเลิก" onClick="jascript:history.go(-1)"></br></br>
                <div class="row">
                    <span align="center" id="success_result"></span>
                </div>
            </div>
        </form>
    </div>
    <br>
    <script>
        $(document).ready(function() {

            $('#repeater').createRepeater();

            $('#repeater_form').on('submit', function(event) {
                event.preventDefault();
                var formData = new FormData($(this)[0]);
                $.ajax({
                    url: "test_tb_insert1.php",
                    type: "POST",
                    processData: false,
                    contentType: false,
                    data: formData,
                    success: function(data) {
                        $('#repeater_form')[0].reset();
                        $('#repeater').createRepeater();
                        $('#success_result').html(data);
                        //window.location = 'status_d.php?nID=<?php //echo $result['send_id'];
                                                                ?>';
                    }
                })
            });
        });
    </script>
    <script type="text/javascript">
        function sl_provinces(key) {
            var id_province = $('#provinces_' + key).val();
            //console.log($(this).val()); // เทสระบบ
            $.ajax({
                type: "post",
                url: "ajax_address2_db.php",
                data: {
                    id: id_province,
                    function: 'provinces'
                },
                success: function(data) {
                    $('#amphures_' + key).html(data);
                    $('#districts_' + key).html(' ');
                }
            });
        }

        function sl_amphures(key) {
            var id_amphures = $('#amphures_' + key).val();
            //console.log($(this).val()) เทสระบบ
            $.ajax({
                type: "post",
                url: "ajax_address2_db.php",
                data: {
                    id: id_amphures,
                    function: 'amphures'
                },
                success: function(data) {
                    //console.log(data)
                    $('#districts_' + key).html(data);
                }
            });
        }

        /*function sl_districts(key) {
            var id_districts = $('#districts_' + key).val();
            //console.log($(this).val()) เทสระบบ
            $.ajax({
                type: "post",
                url: "ajax_address2_db.php",
                data: {
                    id: id_districts,
                    function: 'districts'
                },
                success: function(data) {
                    //console.log(data)
                    $('#zipcode_' + key).val(data);
                }
            });
        }*/
    </script>

    <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.12.9/umd/popper.min.js" integrity="sha384-ApNbgh9B+Y1QKtv3Rn7W3mgPxhU9K/ScQsAP7hUibX39j7fakFPskvXusvfa0b4Q" crossorigin="anonymous"></script>
    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/js/bootstrap.min.js" integrity="sha384-JZR6Spejh4U02d8jOt6vLEHfe/JQGiRRSQQxSfFWpi1MquVdAyjUar5+76PVCmYl" crossorigin="anonymous"></script>
</body>

</html>

<?php
mysqli_close($conn);



test_tb_insert1.php
<?php
ini_set('display_errors', 1);
error_reporting(~0);

$connect = new PDO("mysql:host=localhost;dbname=labsend", "root", "");


if (isset($_POST["send_id"])) {
  $send_id = $_POST["send_id"];
  $sample_type = $_POST["sample_type"];
  $fullname = $_POST["fullname"];
  $age = (isset($_POST['age'])) ? $_POST["age"] : '';
  $address = (isset($_POST['address'])) ? $_POST["address"] : '';
  $sub_district = (isset($_POST['sub_district'])) ? $_POST["sub_district"] : '';
  $district = (isset($_POST['district'])) ? $_POST["district"] : '';
  $province = (isset($_POST['province'])) ? $_POST["province"] : '';


  $query = "";


  for ($i = 0; $i < count($_POST["sample_type"]); $i++) {

    $query .= "
  INSERT INTO lab_detail set
  send_id = '$send_id', 
  sample_type = '$sample_type[$i]', 
  fullname='$fullname[$i]',

  sex =  '" . $_POST['programming_languages'][$i] . "',
  age = '$age[$i]', 
  address='$address[$i]',
  sub_district = '$sub_district[$i]',
  district = '$district[$i]',
  province = '$province[$i]';
  ";
  }
  $statement = $connect->prepare($query);
  if ($statement->execute()) {
    echo '
  <div class="alert alert-success">
   Data Successfully Inserted
  </div>
  ';
  }
}



ส่วน Repeater ค่ะ
repeater.js
jQuery.fn.extend({
    createRepeater: function () {
        var addItem = function (items, key) {
            var itemContent = items;
            var group = itemContent.data("group");
            var item = itemContent;
            var input = item.find('input,select');
            input.each(function (index, el) {
                var attrName = $(el).data('name');
                var skipName = $(el).data('skip-name');
                if (skipName != true) {
                    $(el).attr("name", group + "[" + key + "]" + attrName);
                } else {
                    if (attrName != 'undefined') {
                        $(el).attr("name", attrName);
                    }
                }
                var tempID = $(el).attr('id');
                tempID = tempID.split('_');
                var attrID = tempID[0];
                $(el).attr("id", attrID+'_'+key);
                switch(attrID){
                    case "provinces" : $(el).attr( "onchange", "sl_provinces("+key+")"); break;
                    case "amphures" : $(el).attr( "onchange", "sl_amphures("+key+")"); break;
                    //case "districts" : $(el).attr( "onchange", "sl_districts("+key+")"); break;
                }
            })
            var itemClone = items;

            /* Handling remove btn */
            var removeButton = itemClone.find('.remove-btn');

            if (key == 0) {
                removeButton.attr('disabled', true);
            } else {
                removeButton.attr('disabled', false);
            }

            $("<div class='items'>" + itemClone.html() + "<div/>").appendTo(repeater);
        };
        /* find elements */
        var repeater = this;
        var items = repeater.find(".items");
        var key = 0;
        var addButton = repeater.find('.repeater-add-btn');
        var newItem = items;

        if (key == 0) {
            items.remove();
            addItem(newItem, key);
        }

        /* handle click and add items */
        addButton.on("click", function () {
            key++;
            addItem(newItem, key);
        });
    }
});


ติดปัญหาส่วนของ checkbox ค่ะ ขอคำแนะนำหน่อยนะคะ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2021-07-22 08:45:08 By : funny
 


 

No. 4



โพสกระทู้ ( 296 )
บทความ ( 0 )



สถานะออฟไลน์


Quote:
ติดปัญหาส่วนของ checkbox

ขยายความหน่อย ติดปัญหาขั้นตอนไหนของการ implement checkbox
ajax หรือ insert ...

ถ้าไม่รู้ ลองเช็ค $_POST["sample_type"] ด้วย print_r แล้วนำมาโพสต์
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2021-07-22 11:59:02 By : TheGreatGod_of_Death
 


 

No. 5



โพสกระทู้ ( 27 )
บทความ ( 0 )



สถานะออฟไลน์


Quote:
ติดปัญหาขั้นตอนไหนของการ implement checkbox
ajax หรือ insert ...


ติดปัญหาตรง insert ค่ะ อยากให้เลือกชนิดตัวอย่าง เช่น stool กับ serum ของนาย A เมื่อ submit แล้วให้ เก็บ 2 เรคคอร์ดตามชนิดตัวอย่างแต่เป็นชื่อของนาย A

ลอง print_r($_POST["sample_type"]);

Array ( [0] => Stool [1] => Serum )

Notice: Undefined offset: 1 in C:\xampp\htdocs\LabSend\test_tb_insert1.php on line 30

Notice: Undefined offset: 1 in C:\xampp\htdocs\LabSend\test_tb_insert1.php on line 32-37
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2021-07-22 13:29:00 By : funny
 


 

No. 6



โพสกระทู้ ( 296 )
บทความ ( 0 )



สถานะออฟไลน์


เมื่ออ้างอิงสมาชิกที่ไม่มีใน array จะเจอ Notice นี้
Undefined offset - ไม่พบ index (เมื่ออ้างอิงแบบ index)
Undefined index - ไม่พบ key (เมื่ออ้างอิงด้วยชื่อ key)

แต่ line ที่แจ้งใน Notice กับ line ในเว็บบอร์ดมักไม่ตรงกัน
เบื้องต้นลองเช็ค index/key ก่อน

Code (PHP)
$foo = array("value1");

$bar = [1, 2, 3, 4, 5];
for ($i = 0; $i < count($bar); $i++) {
	// Undefined offset: 1
	echo $foo[$i];
	// เช็คด้วย isset ก่อน
	echo isset($foo[$i]) ? $foo[$i] : '';
} 

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2021-07-22 14:55:29 By : TheGreatGod_of_Death
 


 

No. 7



โพสกระทู้ ( 27 )
บทความ ( 0 )



สถานะออฟไลน์


สอบถามเพิ่มเติมนะคะ

จากโค้ดด้านบน ในส่วน check box ตอนแรก ใช้เป็น option select มาก่อน แล้วปรับฟอร์มให้เป็น check box ดังภาพ
checkbox3

test_tb_insert1.php
//ส่วนเพิ่มข้อมูล Repeater ยังไม่ได้เขียนโค้ดเพิ่มในส่วน checkbox นะคะ
  for ($i = 0; $i < count($_POST["sample_type"]); $i++) {

    $query .= "
  INSERT INTO lab_detail set
  send_id = '$send_id', 
  sample_type = '$sample_type[$i]', 
  fullname='$fullname[$i]',

  sex =  '" . $_POST['programming_languages'][$i] . "',
  age = '$age[$i]', 
  address='$address[$i]',
  sub_district = '$sub_district[$i]',
  district = '$district[$i]',
  province = '$province[$i]';
  ";
  }


ในโค้ดด้านบนเป็น เพิ่มข้อมูลที่เป็น option select อยู่ แต่พอปรับเป็น check box ก็เลยงงว่า ต้อง insert ข้อมูล checkbox ซ้อนใน for อีกรอบรึป่าวคะ แต่ไม่รู้ว่าต้องเริ่มเขียนโค้ดแบบไหนดีค่ะ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2021-07-22 15:42:59 By : funny
 


 

No. 8



โพสกระทู้ ( 296 )
บทความ ( 0 )



สถานะออฟไลน์


Quote:
เพิ่มข้อมูลที่เป็น option select อยู่ แต่พอปรับเป็น check box

แสดงว่า input select ที่เคยทำ ไม่ใช่แบบ multiple
ทำให้จำนวนสมาชิกใน array มีแค่หนึ่งเหมือนกันกับ array อื่น จึงไม่เกิดปัญหา
พอมาเปลี่ยนเป็น checkbox ซึ่งเลือกได้หลายอัน จำนวน array ที่ POST เข้ามา
จึงเพิ่มขึ้น มีมากกว่าหนึ่ง เวลาเข้าลูปใช้เงื่อนไขจาก จำนวน checkbox ที่เลือก
ในขณะที่ array อื่นๆ ที่ส่งเข้ามาพร้อมกัน เช่น $fullname (มาจาก $_POST["fullname"])
มีจำนวนสมาชิกน้อยกว่าจำนวนลูป จึงเกิด array overflow




วิธีแก้ (ทำความเข้าใจ ตัวอย่าง No.6)

ตั้งแต่ $fullname ลงไปถึง $province ใส่ isset ก่อน ส่วน $sample_type ไม่ต้อง
เพราะเช็คในเงื่อนไข for แล้ว ยังไงก็ไม่มีทางเกินจำนวนรอบ


Code (PHP)
$full_name = isset($fullname[$i]) ? $fullname[$i] : '';
//...

$query .= "
INSERT INTO lab_detail set
send_id = '$send_id',
sample_type = '$sample_type[$i]',
fullname='$full_name',
//...

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2021-07-22 17:10:01 By : TheGreatGod_of_Death
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : ขอคำแนะนำ การเพิ่มเรคคอร์ดตามการติ๊ก checkbox โดยใช้ชื่อเดิม ค่ะ
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: นำเข้าสินค้าจากจีน, Taobao, เฟอร์นิเจอร์, ของพรีเมี่ยม, ร่ม, ปากกา, power bank, แฟลชไดร์ฟ, กระบอกน้ำ

Load balance : Server 00
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2024 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่