在sqlsrv_fetch_array中的一个表格中我有
<select class="styled-select" name="StockArray['.$row1['ProductID'].']" required><option selected></option><option>0</option><option>1</option><option>2</option><option>3</option><option>4</option><option>5</option><option>6</option><option>7</option><option>8</option><option>9</option><option>10</option><option>11</option><option>12</option><option>13</option><option>14</option><option>15</option></select>
并在提交该表单后的页面上,我有这个foreach来构造一个插入。
$InsertDate = date("Y-m-d H:i:s");
foreach ($_POST['StockArray'] as $ProductID => $Qty) {$InsertList .= "('".$ProductID."', '".$Qty."', '".$InsertDate."', '1'),";}
$InsertList = rtrim($InsertList, ',');
我想传递的是$ _POST ['StockArray']中的额外变量$ row1 ['LastQty'],所以我可以在插入中添加一个额外的列。我不认为数据在技术上可能只有每个键只有一个值,但我在这里看看是否有针对我正在尝试做的解决方法。
答案 0 :(得分:1)
您可以通过编码/解码变量。所以,例如,如果你的productID是4并且你想编码一个LocationID(比方说28)那么你可以像这样命名变量:P4L28,所以在php中:
const list = List(['Hello', 'World', 'This', 'Is', 'a', 'List']);
const [first, second, ...theRest] = list;
console.log(first);
> "Hello"
console.log(second);
> "World"
console.log(theRest);
> ["This", "Is", "a", "List"]
然后你需要查看每个组合的$ _POST:
$sel = '<select class="styled-select" name="' . "P{$row1['ProductID']}L{$row1['LocationID']}" // and so on...
如果您只需要在表单中输出lastQty,那么您可以将其打印为纯HTML,因为您不需要它在$ _POST中。
foreach ($_POST as $code => $qty) {
echo "$code => $qty <br>" ;
}