0

我有一个表格,每行都有一个唯一标识符。我还有一个带有用户名的下拉菜单。

基本上每一行都有一个任务,每个任务旁边都有一个带有任务所有者名称的下拉菜单。我需要做的是能够将用户名连同他们的任务 ID 一起发布,这样我就可以在一次提交中更新任务的所有者。

假设以下是我的表格

    ID    Title        MENU
    1     Task 1       (please select)
    2     Task 2       (please select)
    3     Task 3       (please select)
make_change

如果用户在第 1 行中选择了“Mike”,那么我想用 Mike 的 ID 更新数据库,这是 Mike 在下拉菜单中的选项值。

我在尝试将每个菜单链接到正确的行 ID“任务 ID”时遇到困难。这就是我的菜单代码的显示方式

<select name="user_id[]">
<option value="200">Mike</option>
<option value="205">Jaylen</option>
<option value="220"> Jack</option>
</select>

我希望能够将每个菜单链接到正确的任务 ID,因此当我发布表单时,我可以将每个菜单链接到正确的行。

如何在每个菜单中包含任务 ID?

谢谢

4

2 回答 2

1

所以,我的理解是你需要知道哪个Task ID与哪个相关select

假设您select在 PHP 中创建 s,您可以简单地更改

<select name="user_id[]">

<select name="user_id[TASK_ID]">

任务的实际 ID在哪里TASK_ID...(例如123等)。

然后,当您提交给 PHP 时,您可以$_POST[user_id]使用例如循环来foreach循环...

foreach($_POST['user_id'] as $taskid => $userid){
    //Do something with the information....
}

更新

如果您知道TASK_ID不需要遍历整个帖子,则可以使用以下方法访问必填字段:$_POST['user_id'][TASK_ID]

例如...

echo $_POST['user_id'][1]; //Echo's the user id for task 1
echo $_POST['user_id'][8]; //Echo's the user id for task 8
于 2013-09-09T21:55:23.210 回答
0

您可以将它们设为唯一名称,而不是将 select 标记的名称设为数组。这样每一行都可以被唯一标识。例子:

<select name="task1">
    <option value="200">Mike</option>
    <option value="205">Jaylen</option>
    <option value="220"> Jack</option>
</select>

<select name="task2">
    <option value="200">Mike</option>
    <option value="205">Jaylen</option>
    <option value="220"> Jack</option>
</select>

这样,task1 将映射到在 task1 下拉列表中选择的任何内容,并且与 task2 下拉列表相同。

于 2013-09-09T21:51:34.160 回答