post输入while循环的名字数组

时间:2017-08-19 09:57:04

标签: php jquery arrays ajax

while循环中有数组请用下面的代码检查

<?php
$addItemSql = "SELECT * from tbl_invoice_services where col_cust_id='$getID' ORDER BY col_service_id";
$addItemResult = mysqli_query($db, $addItemSql);
while ($addItemRow = mysqli_fetch_assoc($addItemResult)) {
?>
<tr>

<td>
<input type="hidden" id="col_service_product1" name="col_service_product1[]" value="<?php echo $addItemRow['col_service_product']; ?>">
</td>

</tr>
<?php} ?>

并希望将这些数组值发布到php

ajax代码

 $('.saveInvoice').on('click', function (ev) {                           
                            $.ajax({
                                url: "saveInvoce.php",
                                type: "POST",
                                data: {
                      col_service_product1:$('#col_service_product1').val()
                                },
                                success: function (data) { }
                            });
                        });

1 个答案:

答案 0 :(得分:1)

试试这个演示代码

<强>文件1

<?php

$i=0;
while ($i<5) {
?>
<tr>

<td>
<input type="hidden" id="col_service_product1" name="col_service_product1" value="<?php echo $i; ?>">
</td>

</tr>
<?php $i++; } ?>
<button value="Save Invoice" class="saveInvoice">Save Invoice</button>
<script type="text/javascript" src="../library/q.js"></script>
<script type="text/javascript">
    $(document).ready(function(){

        $('.saveInvoice').click(function () {   
                var arr=[];
                var data=document.getElementsByName("col_service_product1");
                for(var i=0;i<data.length;i++){
                    arr[i]=data[i].value;
                }

               $.ajax({
                url: "saveInvoce.php",
                type: "post",
                data: {col_service_product1:arr},
                success: function (data) { 
                    alert(data);
                }
            });
        });
    });

</script>

<强> file2的

<?php

$data=$_POST['col_service_product1'];

//code for save data in table

foreach($data as $value){
    echo $value; //query here
}