任何人都可以用下面的方法指出我正确的方向吗
我在 FROM 中有这个 HTML(在这个例子中被简化了):
=============== 开始 HTML ===================
<select name="Postage[]" id="Unique-ID">
<option value="1">Postage Option 1</option>
<option value="2">Postage Option 2</option>
<option value="3">Postage Option 3</option>
</select>
<input name="PostagePrice[]" id="Price-Unique-ID" value="" />
<select name="Postage[]" id="Unique-ID">
<option value="1">Postage Option 1</option>
<option value="2">Postage Option 2</option>
<option value="3">Postage Option 3</option>
</select>
<input name="PostagePrice[]" id="Price-Unique-ID" value="" />
<select name="Postage[]" id="Unique-ID">
<option value="1">Postage Option 1</option>
<option value="2">Postage Option 2</option>
<option value="3">Postage Option 3</option>
</select>
<input name="PostagePrice[]" id="Price-Unique-ID" value="" />
================== 结束 HTML =====================
我从表单中收集它并使用以下代码将其设置为数组($arrPostageOptions):
=============== 开始 PHP ===================
if (isset($_POST['Postage'])) {
if (is_array($_POST['Postage'])) {
$n = count($_POST['Postage']);
for ($i = 0; $i < $n; ++$i) {
// check to only collect completed entries
if( !empty($_POST['Postage'][$i]) && !empty($_POST['PostagePrice'][$i]) ){
// assign to array
$arrPostageOptions[$i] = array( "Postage" => $_POST['Postage'][$i], "PostagePrice" => $_POST['PostagePrice'][$i], );
}
}
}
}
=============== 结束 PHP ===================
这导致以下数组
============ 数组结果 ================
Array(
[0] => Array
(
[Postage] => 1
[PostagePrice] => 12
)
[1] => Array
(
[Postage] => 2
[PostagePrice] => 24
)
[2] => Array
(
[Postage] => 3
[PostagePrice] => 48
)
)
============ 结束数组结果 ===============
我想要的答案(我认为)对于每个数组是:
1 & 12
2 & 24
3 & 48
(数组号码与邮资号码匹配只是巧合,我只想要'Postage'和'PostagePrice')
我正在尝试以下操作:
=========== 我正在尝试的开始 ==========
foreach ($arrPostageOptions as $id) {
while ($id) {
$Postage = $id["Postage"];
$PostagePrice = $id["PostagePrice"];
// echo $Postage.' '.$PostagePrice.'<br>';
unset($id);
if (!$listing_obj->addPostageOptions($ListingID, $PostageOptionID, $PostagePrice, $db)) {
$err_text .= 'An error occurred adding Postage Option'.$PostageOptionID;
}
}
}
======我正在尝试的结束===============
不幸的是,这并没有像我预期的那样工作(但这是我得到的最接近的)。我也尝试了多个 foreach 循环,但我还是没有得到我之后的内容(不稳定的 $id 会阻止循环永远继续,但也会给我未定义变量 $id 的 PHP 通知)
我确定我知道如何做到这一点,但似乎已经忘记并且可能过于复杂,因为这些数组仍然让我感到困惑。
非常欢迎任何建议!