gpt4 book ai didi

php - 在 PHP 中处理动态数量的表单字段的最佳方法?

转载 作者:太空狗 更新时间:2023-10-29 14:45:01 25 4
gpt4 key购买 nike

我有一个系统,我需要列出任意数量的员工,并在一周中的每一天都可以输入“工作时间”值的文本字段。

所以我需要生成一个具有动态行数的表,每行将包含 7 个文本字段。我只是想知道在将 ID 分配给这些字段时使用的最佳约定是什么,以便在我的后端收到输入数据后轻松迭代?

每一行都有一个 ID 号,该 ID 号与表示员工 ID 的行相关联。

如果能够做这样的事情就太棒了:

foreach($rows as $row)
{
$id = $row['id'];

$employee = Employee::find($id);

foreach($row['hoursWorked'] as $dailyHours)
{
$timecard = new Timecard();
$timecard->hours = $dailyHours;
$employee->timecards->insert($timecard);
}
}

在 HTML 端构建我的表单并标识我的输入的最佳方式是什么,以尽可能轻松地完成此操作?

作为旁注,我在 Laravel 3 框架内工作,以防打开任何其他解决方案。

最佳答案

<input type="text" name="hoursWorked[]" />将在内部转换为 $_POST['hoursWorked'] 下的数组.这意味着你可以做这样的事情:

<input type="text" name="hoursWorked[12345][]" /> <!-- Sunday -->
<input type="text" name="hoursWorked[12345][]" /> <!-- Monday -->
<input type="text" name="hoursWorked[12345][]" /> <!-- Tuesday -->
<input type="text" name="hoursWorked[12345][]" /> <!-- Wednesday -->
<input type="text" name="hoursWorked[12345][]" /> <!-- Thursday -->
<input type="text" name="hoursWorked[12345][]" /> <!-- Friday -->
<input type="text" name="hoursWorked[12345][]" /> <!-- Saturday -->

然后,在 PHP 中:

<?php
foreach ($_POST['hoursWorked'] as $employeeId=>$dayArray) {
foreach ($dayArray as $dayOfWeek=>$hoursWorked) {
// $employeeId will be 12345
// $dayOfWeek will be 0, 1, 2, 3, 4, 5 ,6
// $hoursWorked will be the value of the text field
}
}

关于php - 在 PHP 中处理动态数量的表单字段的最佳方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15819920/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com