如何用一个命令将html表数据插入到mysqli数据库中


how to insert html table data into mysqli database in single command

我正在使用一个HTML表表单从用户那里收集数据。可以通过单击ADD MORE按钮来增加表格的行数,也可以通过单击DELETE按钮来减少表格的行。因此,表中的行数并不是所有用户都固定的。有时只有4行,有时可以是12行。我想知道如何通过单击一次"提交"按钮将所有数据(行)插入到我的mysqli数据库中。你可以在下面的链接中查看我的表格:

JsFiddle 演示

我的php代码:

<?php
    $email = $_SESSION["email"];
    $cell = "Select `cellno` FROM `userreg` WHERE email = '$email'";
    $result = mysqli_query($conn, $cell);
    $cellno = "";
    if(mysqli_num_rows($result)>0)
    {
        while($row = mysqli_fetch_assoc($result)) 
        {
            $cellno = $row["cellno"];
        }
    }

    if(isset($_POST['submit']))
    {
        $fullname = $_SESSION["fullname"];
        $medname = $_POST['medname'];
        $medqty  = $_POST['medqty'];
        $medtype = $_POST['medtype'];
        $num = $_POST['num'];
        $date = date("Y.m.d");

      $medorder = "INSERT INTO `medorder` (`fullname`, `phoneno`, `medname`, `quantity`, `medtype`, `date`,`orderno` ) VALUES ('$fullname', '$cellno', '$medname','$medqty', '$medtype', CURRENT_TIMESTAMP, '$num' )";
      if($conn->query($medorder)=== TRUE) 
      {
        echo"<br>";
        echo " Your Question has been submitted successfully";
      }
      else 
      {
        echo " Error!! Try again or later";
      }
    }     
?>

首先更改输入的名称:

   <TR>
        <TD><INPUT type="checkbox" name="chk"/></TD>
        <TD><input type="hidden" value="1" name="num[]" id="orderdata">1</TD>
        <TD><INPUT type="text" name="medname[]" class="form-control" id="orderdata" placeholder="Your Medicine name"/></TD>
        <TD><INPUT type="text" name="medqty[]" class="form-control" id="orderdata" placeholder="Quantity" /></TD>
        <TD>
           <SELECT name="medtype[]" class="form-control" id="orderdata">
              <OPTION value="in">Bangladesh</OPTION>
              <OPTION value="de">Germany</OPTION>
              <OPTION value="fr">France</OPTION>
              <OPTION value="us">United States</OPTION>
              <OPTION value="ch">Switzerland</OPTION>
            </SELECT>
          </TD>
      </TR> 

然后通过循环表中的行数来构建查询。

$medorder='';
    foreach ($medname as $key => $value) {
         $medorder .= "INSERT INTO `medorder` (`fullname`, `phoneno`, `medname`, `quantity`, `medtype`, `date`,`orderno` ) VALUES ('$fullname', '$cellno[$key]', '$medname[$key]','$medqty[$key]', '$medtype[$key]', CURRENT_TIMESTAMP, '$num' ),";
}