如何构建和处理具有同一表单中的多个记录的表单



我正在制作一个"工作时间"数据库,用户可以记录他们每天的工作时间。目前,表单只允许他们一次添加一条记录(天)。

一些用户希望在月底完成这个操作,并一次注册当月的所有天。如果表单在一个页面上每天都有一个字段,然后一次提交,那就容易多了。

建议如何处理这个问题?

我应该只是添加31行与字段,并命名为blabla1, blabla2, blabla3等。然后在PHP中逐一检查,如果字段不是空的,如果不是,执行INSERT?或者有更优雅的方法来解决这个问题?

目前数据库有这些字段:WorkHourID员工项目开始时间EndTime

这真的很简单。创建如下HTML:

<input type="text" name="hours[]" />
<input type="text" name="hours[]" />
<input type="text" name="hours[]" />

他们提交的任何内容都会创建一个PHP数组,如下所示:

$_POST['hours'] = array([0] => 'value 1', [1] => 'value 2');

我认为你可以从那里开始,对吗?或者你还需要帮助吗?

如果您需要更多PHP部分:

<?php
foreach($_POST['hours'] as $value){
   if ($value){ // it's not empty
      // maybe do a little more check on whether $value is valid
      // then insert $value to DB
   }
}
?>

在表单中,您可以添加一个标签为"For the whole month"的复选框。如果选中复选框,则添加与该月天数总数相同的记录。但是在某个地方添加注释,说明如果某个日期已经被填满,那么相应的记录将不会被覆盖。或者您可以添加另一个复选框来覆盖当月的现有记录。

HTH

相关内容

  • 没有找到相关文章

最新更新