PHP处理带有随机项目数量的清单

时间:2018-06-19 20:48:28

标签: php html mysql mysqli

我有一个HTML表格用作检查清单。有多个清单,用户也可以创建自己的清单和项目。此清单的行数随机。

$table .= "<tr style='cursor: pointer; border: 1px solid black;' onclick='selectVal(this)'>
                          <td style='border: 1px solid transparent; width: 5%;' class='cbTrue'><input type='hidden' value='".$srcarr['id']."' name='item_id' /><input type='checkbox' name='".$srcarr['id']."_True' /></td>
                          <td style='border: 1px solid transparent; width: 30%;'>".$srcarr['item']."</td>
                          <td style='border: 1px solid transparent; width: 30%;'><input type='hidden' class='ckTimeStamp' /></td>
                     </tr>";

$srcarr是我的数组,它来自MySQLI查询,并包含项ID或项名称的信息。

我的问题是:如果项目已被检查以及何时被保存在MySQL数据库中,我想将其与信息一起保存。但是我不知道如何将表单发布到PHP之后如何区分有关单个项目的信息。有人有主意吗?

3 个答案:

答案 0 :(得分:0)

您是指用户单击复选框的确切时间,而不是用户提交页面的时间吗?

如果这是他们选中您复选框的确切时间,则可以使用JavaScript通过在复选框元素的事件更改上添加时间来为隐藏输入分配时间值。

在jquery上会像这样:

$('input[type="checkbox"][name="checkbox-name"]').change(function() {
    if(this.checked) {
        var now = new Date;
        $('input. ckTimeStamp').val(now.getTime);
    }
});

答案 1 :(得分:0)

据我了解,您需要添加一些行,并且需要为每个输入创建唯一的名称。

尝试一下:

plt.figure(figsize=(8,6), dpi=100, frameon=True, clear=False)
plt.axis([-20000, 20000, -0.3, 0.3])

for f in filenames:
    print(f)
    data = np.loadtxt(f, skiprows=12)

    plt.plot(data[:,0],data[:,1])

plt.axvline(x=0, color="black", linestyle='-')
plt.axhline(y=0, color="black", linestyle='-')

plt.title("Test")
plt.xlabel("Field (G)")
plt.ylabel("Moment(memu)")

plt.legend()
plt.show()

然后在表单处理中,循环访问<input type='hidden' value='".$srcarr['id']."' name='item_id[".$srcarr['id']."]' /><input type='checkbox' name='".$srcarr['id']."_True' /> ,并从数组键中检查是否设置了$_POST['item_id']

答案 2 :(得分:0)

有关代码示例,请参见Processing HTML checkbox forms with PHP

您需要的是具有与custom_checkboxes[]相同名称的复选框列表,并将$srcarr['id']存储为值。在PHP中,当您以数组形式接收数据时,只有被选中的$srcarr['id']将被包含在数组中。