对于每个多个选择插入值


For each multiple select insert values

我有一个带有多个选择的表单。
我希望对于每个被选中的用户(复选框),从数据库

中的选择(是多个)中插入一个值。

User1: 5、7、8
User2: 6、4
User3: 4

For User1: 3行插入
For user2:插入2行
For user3: 1 single row
:插入6行

<div>
    <input type="checkbox" name="boxes[]" id="<?=$row['id'];?>" value="<?=$row['id'];?>">
    <label for="<?=$row['id'];?>"><?=$row['username'];?></label>
    <select id="<?=$row['id'];?>" type="tel" step="0.01" name="nota[<?=$row['id'];?>]" value="" multiple style="-wap-input-format: 'N'">
        <option value="">chose</option>
        <option value="10">10</option>
        <option value="9">9</option>
        <option value="8">8</option>
        <option value="7">7</option>
        <option value="6">6</option>
        <option value="5">5</option>
        <option value="4">4</option>
        <option value="3">3</option>
        <option value="2">2</option>
        <option value="1">1</option>
    </select>
</div>

我使用MYSQL。如何使每个复选框插入值从选择(梨)?从select1插入值到checkbox1,不从select2插入值到checkbox1

我认为这应该工作,假设您使用PDO作为数据库API。如果没有,您可以轻松地将其转换为其他api。

$stmt = $pdo->prepare("INSERT INTO yourTable (id, option) VALUES (:id, :option)";
foreach ($_POST['boxes'] as $id) {
    foreach($_POST['nota'][$id] as $option) {
        $stmt->execute(array(':id' => $id, ':option' => $option));
    }
}