【问题标题】:Inserting data into mySQL table from mutlidimensional input form从多维输入表单将数据插入到 mySQL 表中
【发布时间】:2015-11-25 19:37:26
【问题描述】:

我想知道将数据从多维表单插入数据库的最佳方法是什么。我的表单输入的名称如下所示:

name="order[][quantity]"
name="order[][description]"
name="order[][article]"
name="order[][price]"
name="order[][tax]"
name="order[][discount]"

如何将这些数据插入我的数据库?下面是我的表格图片:

如您所见,用户可以添加许多部分,并且所有部分都由一个提交按钮处理。订单数量是一个变量。

我该如何解决这个问题?

【问题讨论】:

  • 姓名输入必须是唯一的,不确定这是正确的方法name="order[][quantity]" 但这是name="quantity[]"
  • 显示一些代码。我们喜欢把事情搞砸

标签: php mysql arrays database multidimensional-array


【解决方案1】:

我假设是..

SomePage.php

<input type='text' name='quantity[]'>
<input type='text' name='description[]'>
<input type='text' name='article[]'>
<input type='text' name='price[]'>
<input type='text' name='tax[]'>
<input type='text' name='discount[]'>

Submit_Some_Page.php

<?
extract($_POST);

$TotalArticle=sizeof($article);

for($i=0;$i<$TotalArticle;$i++)
{
    $Article=$article[$i];
    $Quanity=$quantity[$i];
    $Price=$price[$i];
    $Tax=$tax[$i];
    $Discount=$discount[$i];
    $Description=$description[$i];

    <-- Now, Write Insert Query Here..
    $Query="INSERT INTO TableName SET Col1Name=$Article,Col2Name=$Quanity,Col3Name=$Price,Col4Name=$Tax,Col5Name=$Discount,Col6Name=$Description";
      ..... Write Mysql Query To Execute It
}
?>

【讨论】:

  • 哦,谢谢。正是我在寻找的东西,但我今天太累了,我想不出来:D
  • 我很感谢你@mrjasmin。至少,我的代码帮助了某人。没问题..有时,它会发生。保重。
  • 很抱歉,@dlporter98 先生,它会起作用的。未经适当测试,我从不发布任何答案。问的人同意我的回答。并且,他必须做什么验证,让他去做。如上图所示。价格、税收和折扣是相互关联的。填写这些文本框后,只计算总价格。并且,感谢您在没有正确测试的情况下对我的回答投了反对票。
【解决方案2】:

您必须为 PHP 定义数组。换句话说,您不能为此使用空键,您需要为它们自动编号

name="order[0][quantity]"
name="order[0][description]"
name="order[0][article]"
name="order[0][price]"
name="order[0][tax]"
name="order[0][discount]"

然后做order[1]

【讨论】:

  • 这是正确的方法。例外的答案会导致错误
猜你喜欢
  • 1970-01-01
  • 2017-07-03
  • 2017-08-20
  • 1970-01-01
  • 2017-09-20
  • 1970-01-01
  • 2013-02-20
  • 1970-01-01
  • 2016-11-13
相关资源
最近更新 更多