1

我正在尝试创建一个函数,用户应该从 a 中选择一个选项<select>并将日期添加到所选值(在<input type='text'>同一行内)。然后,当输入字段后,将其作为数组发送到PHP文件并插入数据库。

我在表的同一行上动态创建<select>, 和。<input type='text'>

选择看起来像这样:<input type='select' class='add_absence_type'>
输入字段:<input type='text' class='add_absence_date'>

我正在处理的脚本目前看起来像这样:

$('#save').click(function() {
function serealizeSelects (select)
    {
        var array = [];
        select.each(function(){ array.push($(this).val()) });
        return array;
    }
function serealizeInputs (input)
    {
        var array = [];
        input.each(function(){ array.push($(this).val()) });
        return array;
    }
    var student_id = $('#student_id').val();
    var add_absence_type = serealizeSelects($('.add_absence_type'));
    var add_absence_date = serealizeInputs($('.add_absence_date'));

    $.post('../updateAbsence.php', {

    student_id: student_id,
    add_absence_type: add_absence_type,
    add_absence_date: add_absence_date

    }, function(data) {
        location.reload();
    });
});

$_POST数据如下所示:

student_id  1
add_absence_date[]  2012-11-13
add_absence_date[]  2012-11-14
add_absence_type[]  1
add_absence_type[]  2

我需要做什么来创建一个mysql_query像这样创建的 PHP 循环?见下文:

"INSERT INTO my_table (student_id, absence_type_id, absence_date) VALUES ('1', '1', '2012-11-13')"

"INSERT INTO my_table (student_id, absence_type_id, absence_date) VALUES ('1', '2', '2012-11-14')"

4

1 回答 1

1

试试这个方法

<?php
$student_id = $_POST['student_id'] ;
$absence_date_arr = $_POST['add_absence_date'] ;
$absence_type = $_POST['add_absence_type'] ;

foreach($absence_date_arr as $key=> $absence_date){
    mysql_query("INSERT INTO my_table (student_id, absence_type_id, absence_date) VALUES ('".$student_id."', '".$absence_type[$key]."', '".$absence_date."')");  
}
?>
于 2012-11-14T08:45:52.820 回答