Php 插入多个不为空

Php 插入多个不为空,php,mysql,database,insert,Php,Mysql,Database,Insert,我需要插入多个记录我现在有这个。 它还添加了空字段,因为我不知道如何从插入中排除它们: if ($_SERVER['REQUEST_METHOD'] == 'POST'){ /* as_factuurregel */ $product1 = $_POST['product1']; $product2 = $_POST['product2']; $product3 = $_POST['product3']; $product4 = $_POST['product4']; $product5 =

我需要插入多个记录我现在有这个。 它还添加了空字段,因为我不知道如何从插入中排除它们:

 if ($_SERVER['REQUEST_METHOD'] == 'POST'){

/* as_factuurregel */
$product1 = $_POST['product1'];
$product2 = $_POST['product2'];
$product3 = $_POST['product3'];
$product4 = $_POST['product4'];
$product5 = $_POST['product5'];
$product6 = $_POST['product6'];

$aantal1 = $_POST['aantal1'];
$aantal2 = $_POST['aantal2'];
$aantal3 = $_POST['aantal3'];
$aantal4 = $_POST['aantal4'];
$aantal5 = $_POST['aantal5'];
$aantal6 = $_POST['aantal6'];

$sql = "INSERT INTO as_factuurregel (productid, factuurid, aantal)
  VALUES ('$product1', 'test', '$aantal1'),('$product2', 'test', '$aantal2'),('$product4', 'test', '$aantal3'),('$product5', 'test', '$aantal5'),('$product5', 'test', '$aantal5')";
谢谢你的帮助

问候语

试试这个:

$product1 = $_POST['product1'];
$product2 = $_POST['product2'];
$product3 = $_POST['product3'];
$product4 = $_POST['product4'];
$product5 = $_POST['product5'];
$product6 = $_POST['product6'];

$array_one = array($product1,$product2,$product3,$product4,$product5,$product6);

$aantal1 = $_POST['aantal1'];
$aantal2 = $_POST['aantal2'];
$aantal3 = $_POST['aantal3'];
$aantal4 = $_POST['aantal4'];
$aantal5 = $_POST['aantal5'];
$aantal6 = $_POST['aantal6'];

$array_two = array($aantal1,$aantal2,$aantal3,$aantal4,$aantal5,$aantal6);

$newArray = array();
foreach ($array_one as $key => $value) {
    if($value != '' && $array_two[$key] != '')
    {
        $newArray[] = "('$value','test','$array_two[$key]')";
    }
}

$values = implode(",",$newArray);
$sql = "INSERT INTO as_factuurregel (productid, factuurid, aantal)
        VALUES ".$values;

如果优化输入字段并将其移动到数组中,则可以优化此解决方案。

共享更多代码如何使这些变量$product1、$aantal1?这样更好。检查我的答案还有一个建议,如果你有时间的话,用数组代替多变量。。只是建议Devpro谢谢你帮我举个例子?