也许我想做的事情是不可能的,这是有道理的。但是,我不知道如何能够实现我想要的目标。
我有一个对话系统设置,所有工作都很方便。但是,我想允许“管理员”将对话的每个成员的角色更改为“主持人”和“成员”。我有一个表单设置,但我不知道如何动态设置选择框以应用于该特定成员。
现在,我有一个表,列出每个成员名称,所有成员都包含在表单中,然后是一个旁边的选择框,可以选择切换他们的角色。我给每个选择框命名相同,因为我认为这会返回一些关于如何执行此操作的Google搜索,但由于我特别需要更新该特定成员的数据库,我不知道它是如何工作的。
<select id="' . $convorolesrow['id'] . '" name="convomemrole">
<option value="Moderator">Moderator</option>
<option value="Member">Member</option>
</select>
如您所见,每个选择框都具有相同的名称“convomemrole”和一个不同的ID,以有望识别两者之间的差异,但就任何Google搜索引导我而言,这都没有意义。
这可能吗?如果没有,接近这个的正确方法是什么。
一些可能的方法是对名称进行排列,因此使用foreach来执行每个选择框个体,这听起来像是可行的 - 但是我如何识别特定的选择框ID?
答案 0 :(得分:0)
您可以使用以下名称创建数组:
<select id="' . $convorolesrow['id'] . '" name="convomemrole[]">
<option value="Moderator">Moderator</option>
<option value="Member">Member</option>
</select>
将发布包含这些选择框值的数组。
答案 1 :(得分:0)
这个Q + A实际上回答了我的问题。
我正在使用数组(我已经知道)从每个选择框中获取所有细节以供使用。我正在设置每个选择框的值。
<select name="convomemrole[]">
<option value="' . $row['id'] . '|Moderator">Moderator</option>
<option value="' . $row['id'] . '|Member">Member</option>
</select>
然后
$convomemrolearray = $_POST['convomemrole'];
foreach($convomemrolearray as $convomemroles) {
$convorolesplit= explode("|", $_POST['convomemroles']);
$convorolesplit[0]; // identifier
$convorolesplit[1]; // role
#myquerieshere
}