Php 从多个同名输入字段检索数据

Php 从多个同名输入字段检索数据,php,forms,post,input,Php,Forms,Post,Input,我有一个表单,您可以动态创建新的输入字段(type=hidden),在发送表单时,php代码应该检索这些字段。然而,由于输入字段的数量可能不同,我给了它们相同的名称。然而,问题是我不知道如何检索它,或者更准确地说,不知道如何处理检索到的内容 来自以下表格: ... <input type='hidden' name='newListObject' value='0' /> <input type='hidden' name='newListObject' value='1' /

我有一个表单,您可以动态创建新的输入字段(type=hidden),在发送表单时,php代码应该检索这些字段。然而,由于输入字段的数量可能不同,我给了它们相同的名称。然而,问题是我不知道如何检索它,或者更准确地说,不知道如何处理检索到的内容

来自以下表格:

...
<input type='hidden' name='newListObject' value='0' />
<input type='hidden' name='newListObject' value='1' />
<input type='hidden' name='newListObject' value='2' />
<input type='hidden' name='newListObject' value='3' />
...
private $m_newListObject = 'newListObject';
...
if (isset($_POST[$this->newListObject])) {
    $listObjects = $_POST[$this->m_newListObject];
}
//Below doesn't work because $listObjects isn't an array

foreach ($listObjects as $listObject) {
    $query = "INSERT INTO listElement (listElemName, listId) VALUES(?, ?)";

    $stmt = $this->m_db->Prepare($query);

    $stmt->bind_param('si', $listObject, $listId);

    $ret = $this->m_db->RunInsertQuery($stmt);

}
来自php代码(listModel.php):

...
<input type='hidden' name='newListObject' value='0' />
<input type='hidden' name='newListObject' value='1' />
<input type='hidden' name='newListObject' value='2' />
<input type='hidden' name='newListObject' value='3' />
...
private $m_newListObject = 'newListObject';
...
if (isset($_POST[$this->newListObject])) {
    $listObjects = $_POST[$this->m_newListObject];
}
//Below doesn't work because $listObjects isn't an array

foreach ($listObjects as $listObject) {
    $query = "INSERT INTO listElement (listElemName, listId) VALUES(?, ?)";

    $stmt = $this->m_db->Prepare($query);

    $stmt->bind_param('si', $listObject, $listId);

    $ret = $this->m_db->RunInsertQuery($stmt);

}

现在将
$\u请求['newListObject']
用作
数组()



现在使用
$\u REQUEST['newListObject']
作为
数组()

如果您调用它们
name=“newListPObject[]”,
PHP将作为可以循环的数组接收它们

如果您调用它们,
name=“newListPObject[]”
PHP将以可以循环的数组形式接收它们

谢谢!所以我应该在没有“[]”的情况下检索它们?我应该使用$\u REQUEST而不是$\u POST吗?或者你是什么意思?@holyredbeard
$\u POST
如果你
POST
$\u GET
如果你
GET
$\u REQUEST
如果我不知道:)
[]
将它们转换为PHP中的数组。因此,您将
$\u which['newListObject']
视为数组而不是标量。而且没有
[]
。这只是在HTML中,让PHP给你数组。谢谢!所以我应该在没有“[]”的情况下检索它们?我应该使用$\u REQUEST而不是$\u POST吗?或者你是什么意思?@holyredbeard
$\u POST
如果你
POST
$\u GET
如果你
GET
$\u REQUEST
如果我不知道:)
[]
将它们转换为PHP中的数组。因此,您将
$\u which['newListObject']
视为数组而不是标量。而且没有
[]
。这只是在HTML中,让PHP为您提供数组。