我有5张这样的表:
价格:
priceList_id product_id compType_id price range_id
价目表:
id name
产品:
id product_desc
companyType:
id type
pricesRange:
id range_desc
价格表是我存储所有内容并与其他表ID链接的地方,如下所示:
id priceList_id product_id compType_id price range_id
1 1 1 5 23.10 1
2 1 1 5 21.30 2
问题是当我重新接收数据并尝试将其插入数据库时:
<input name=\"price[]\" type=\"number\" min=\"0\" required>
<input name=\"price[]\" type=\"number\" min=\"0\" required>
<input name=\"price[]\" type=\"number\" min=\"0\" required>
<input name=\"price[]\" type=\"number\" min=\"0\" required>
<input name=\"price[]\" type=\"number\" min=\"0\" required>
我得到这样的帖子:
if (isset($_POST["createPriceList"])) {
$this->createPriceList($_POST["price"]);
}
所以$ _POST [“price”]是一个数组。我如何将数据插入价格表,知道第一个输入是product_id:1,compType_id:5,range_id:1。第二个输入是product_id:1,compType_id:5,range_id:2,第三个输入是product_id: 1,compType_id:5,range_id:3等等...... 有6个range_id,4个products_id和5个compType_id`s。
提前致谢!
答案 0 :(得分:2)
你不能用这种结构。您必须包含&#34;链接&#34; HTML中的ID,因此您可以识别哪个输入是哪个。最简单的方法就是
<input name="price[1] type="number" value="10" />
<input name="price[42] type="number" value="500" />
等...您可以通过此指定数组键,并且不必接受PHP在您的字段只有[]
时生成的自动生成的键。
然后它只是一个问题:
foreach($_POST['price'] AS $id => $value) {
.... // 1->10, 42->500, etc...
}
答案 1 :(得分:0)
请使用数组形式的参数创建createPriceList函数以插入价格表
function createPriceList($price)
{
for($i=0;$i<sizeof($price);$i++)
{
$query = "insert into prices values($price[0],$price[1],$price[2],$price[3],$price[4])";
mysql_query($query);
}
}
我希望这会对你有所帮助。随意评论。