php - 如何通过序列化形式从不同的输入名称中获取值以插入到mysql中?

标签 php jquery mysql ajax

我有这个动态表单,我有一个 jQuery 函数可以在表单中插入多行:

<form id="forma2" name="items">         
    <table id="prodItems" class="table table-hover table-bordered" style="width:100%">

        <!-- ENCABEZADOS -->
        <thead>
            <tr>
                <!-- <th style="width:8%">Partida</th> -->
                <th style="width:8%" >Cantidad</th>
                <th style="width:15%">Modelo</th>
                <th style="width:15%">S/N</th>
                <th style="width:70%">Descripcion</th>
                <th style="width:3%">Check</th>
            </tr>
        </thead>
        <!-- FIN ENCABEZADOS -->
        <!-- INGRESO DE DATOS DE PRODUCTOS -->
        <tbody>
            <tr>
                <!-- <td>1</td> -->
                <td>
                    <div class="form-group">
                        <input class="form-control cantClass" name="n_cantidad[]" maxlength="5" placeholder="#"/>
                    </div>
                </td>
                <td>
                    <div class="form-group">
                        <input class="form-control autocompletModelo" id="modelo1" name="n_modelo[]" maxlength="20" placeholder="XXX-XXXXX" type="text"/>
                    </div>
                </td>   
                <td>
                    <div class="form-group">
                        <input class="form-control serieClass" name="n_serie[]"  maxlength="20" placeholder="12345ABC"/>
                    </div>
                </td>   
                <td>
                    <div class="form-group">
                        <textarea readonly class="form-control descrClass" id ="descripcion1" rows="2" name="n_descripcion[]"  maxlength="300" placeholder="Descripcion del Material"/></textarea>
                    </div>
                </td>   
                <td>
                    <div class="form-group">
                        <input type='checkbox' class='check'/>
                    </div>
                </td>                   
            </tr>
        </tbody>
    <!-- FIN  INGRESO DE DATOS DE PRODUCTOS -->
    </table>

我正在使用 jQuery 序列化表单(同时超过一行):

$("#enviarDatos").click(function(){

  stringProductos = $("#forma2").serializeArray();
  var v_empresa = $("#empresa").val();
  var v_contacto = $("#contacto").val();
  var v_entrega = $("#entrega").val();
  var v_id = $("#identificador").val();
  var v_fecha = $("#fecha").val(); 

  var dataString = 'empresa='+ v_empresa + '&contacto='+ v_contacto + '&entrega='+ v_entrega +'&identificador='+ v_id + '&fecha=' + v_fecha + '&' + stringProductos ;

    {
        $.ajax({
            type: "POST",
            url: "registro-remision.php",
            data: dataString,
            cache: false,
            success: function() {
                $('.confirmacion').text(dataString).addClass('confirmacion_ok'); 
                alert(dataString); 
            },
            error: function() {
                $('.confirmacion').text('Hubo un error! Intenta de nuevo ').addClass('confirmacion_error');
            }
        });
    } 
return false;
});

我需要通过 PHP 将表单(所有行)保存在 MySQL 中,但我不知道如何从 serialize() 表单中获取信息来完成这项工作。

你能帮帮我吗?

最佳答案

您需要使用 serialize() 不是 serializeArray()

var stringProductos = $("#forma2").serialize();

关于php - 如何通过序列化形式从不同的输入名称中获取值以插入到mysql中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32961933/

相关文章:

php - 使用 FPGA 和 GPU 加速 PHP

php - rightsidebar 从内容 div 中内容的底部开始

javascript - 如何复制文件输入值?

mysql - Sql:使用表的列值作为存储过程的参数

MYSQL if (string in ( 0) ) 返回 TRUE

php - Metaphone vs Levenshtein vs Soundex vs Hamming

php - 对css,js和静态文件的更改未反射(reflect)在nginx docker容器上

jquery - Knockout.js 加载内容后调用 jQuery 函数

jquery - 强制 jQuery 就绪 block 在所有其他就绪 block 之后运行

php - 如何从sql查询创建唯一的数据库名称