提问者:小点点

如何访问包含逗号分隔值的输入框值并将其插入数据库


这是我的PHP代码,直到现在我才尝试

<?php
include_once("../include/connClass.php");
$db = new Database();
$conn = $db->getConnection();

if(isset($_POST["save"]))
{
 $date = $_POST["txtDate1"];
}

$date = $_POST["txtDate1"];
$service = $_POST["txtService1"];
$charge = $_POST["txtCharge1"];
$amount = $_POST["txtAmount1"];
$unit = $_POST["txtUnit1"];
$total = $_POST["txtTotal1"];

for ($i = 0; $i <= count($date); $i++) {

 try {
    $sql = $conn->prepare("INSERT INTO backup_master (backup_date, 
backup_service, backup_charge, backup_amount, backup_unit, backup_total)
        VALUES (:backup_date, :backup_service, :backup_charge, 
 :backup_amount, :backup_unit, :backup_total)");

    $sql->bindParam(':backup_date', $date);
    $sql->bindParam(':backup_service', $service);
    $sql->bindParam(':backup_charge', $charge);
    $sql->bindParam(':backup_amount', $amount);
    $sql->bindParam(':backup_unit', $unit);
    $sql->bindParam(':backup_total', $total);

    $query = $sql->execute();
    // echo $query;
}
catch (PDOException $e) {
    echo $sql . "<br />Error" . $e->getMessage();
}
}
?>

这是我的表格代码

<form method="POST" action="backend/save.php">

<input type="text" id="txtDate1" name="txtDate1">
<input type="text" id="txtService1" name="txtService1">
<input type="text" id="txtCharge1" name="txtCharge1">
<input type="text" id="txtAmount1" name="txtAmount1">
<input type="text" id="txtUnit1" name="txtUnit1">
<input type="text" id="txtTotal1" name="txtTotal1">

<button type="submit" name="save" class="btn btn-primary">Save</button>
</form>

这里是我的问题,我有一个输入框,每个输入框中都有逗号分隔的值(如abc、xyz、pqr),我想一个接一个地将值插入到数据库的不同行中,但现在所有逗号分隔的值都插入到单行中,不知该怎么做。提前谢谢。


共1个答案

匿名用户

您可以分解上的所有POST变量,然后循环获取最小数量的值。

例子:

$date = explode(",", $_POST['txtDate1']);
$unit = explode(",", $_POST['txtUnit1']);

$lowest = 1000; //Bad practice, this assumes there will never be more than 1000 comma seperated values
if (count($date) < $lowest)
    $lowest = count($date); //Loop for all values.

for ($i=0;$i<$lowest;$i++){
    //Insert records into database 1-by-1
}

相关问题