对于每个多个选择插入值

时间:2014-05-19 21:32:28

标签: php html mysql sql

我有一个有多个选择的表单 我想为每个被选中的用户(复选框),从数据库中的select(是多个)插入一个值

用户1:5,7,8
用户2:6,4
用户3:4

对于User1 :插入3行
对于user2 :插入2行
对于user3 :1单行
总计:插入了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,no从select2插入到checkbox1。

1 个答案:

答案 0 :(得分:0)

我认为这应该有效,假设您使用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));
    }
}