PHP表单'Quantity'下拉,将输入到表单中的数据的多行插入


PHP Form with 'Quantity' dropdown to insert that many rows of the data entered into form

第一次在这里发东西。

所以问题是:

    一个带有各种变量的HTML表单
  1. 将上述数据插入MySQL表的Quantity下拉列表那么多次。(所以如果下拉选择5,然后是on-form-submit在数据库表中插入5行数据

到目前为止我所做的工作:表单适用于单行插入。

PHP表单函数

if ( $_POST['addlcd'] ) { //if this form submitted
    $db->query("INSERT INTO
      LCD
      SET
      `dateadded` = '".addslashes($_POST['frm_dateadded'])."',
      `orderid` = '".addslashes($_POST['frm_orderid'])."',
      `ordertype` = '".addslashes($_POST['frm_ordertype'])."',
      `device` = '".addslashes($_POST['frm_device'])."',
      `colour` = '".addslashes($_POST['frm_colour'])."',
      `oldwork` = '".addslashes($_POST['frm_working'])."',
      `Notes` = '".addslashes($_POST['frm_notes'])."',
      `readyby` = '".addslashes($_POST['frm_readyby'])."',
      `status` = '".addslashes($_POST['frm_status'])."',
      `completed` = '".addslashes($_POST['frm_completed'])."'
      ");
}

我可以做我想做的事纯粹在PHP使用_POST['quantity']吗?

我确实有jquery/javascript在页面,所以如果这是一个可行的选择,但我更喜欢PHP函数文件的建议使用基本的我上面有。

感谢您的阅读,如果您需要进一步的信息,请告诉我:)

哦,这是一个使用SMARTY 2的项目。*和PHP 5.6如果有帮助的话

根据我的理解,相同的行将在DB中插入选择的no。数量。

请试一试。

if ( $_POST['addlcd'] ) { 
    //if this form submitted
    //Fetch quantity dd value
    $quantity = !empty($_POST['quantity'])?$_POST['quantity']:0; 
    //Loop will be iterate for selected quantity numbers...
    for($i=0;$i<$quantity;$i++){
        $db->query("INSERT INTO
          LCD
          SET
          `dateadded` = '".addslashes($_POST['frm_dateadded'])."',
          `orderid` = '".addslashes($_POST['frm_orderid'])."',
          `ordertype` = '".addslashes($_POST['frm_ordertype'])."',
          `device` = '".addslashes($_POST['frm_device'])."',
          `colour` = '".addslashes($_POST['frm_colour'])."',
          `oldwork` = '".addslashes($_POST['frm_working'])."',
          `Notes` = '".addslashes($_POST['frm_notes'])."',
          `readyby` = '".addslashes($_POST['frm_readyby'])."',
          `status` = '".addslashes($_POST['frm_status'])."',
          `completed` = '".addslashes($_POST['frm_completed'])."'
          ");
    }    
}