【发布时间】:2020-05-01 06:16:17
【问题描述】:
我需要帮助。
我想创建一个系统,当复选框被选中时,将数据插入数据库,当它被取消选中时,它将数据从数据库中删除。也许还有其他解决方案
HTML
<div class="row">
<div class="col-lg-9"><label for="vehicle1">Perm 1</label></div>
<div class="col-lg-3"><label class="switch"><input value="1" name="permchecked[]" type="checkbox"><span class="slider"></span></label></div>
</div>
<div class="row">
<div class="col-lg-9"><label for="vehicle1">Usuwanie/Perm 2</label></div>
<div class="col-lg-3"><label class="switch"><input value="2" name="permchecked[]" type="checkbox"><span class="slider"></span></label></div>
</div>
<div class="row">
<div class="col-lg-9"><label for="vehicle1">Perm 3</label></div>
<div class="col-lg-3"><label class="switch"><input value="3" name="permchecked[]" type="checkbox"><span class="slider"></span></label></div>
</div>
PHP
if(isset($_POST['u_permissions_update'])){
if (isset($permcheckeds)){
foreach ($permcheckeds as $permchecked) {
$query = $db2->prepare("INSERT INTO permissions_users SET user_id = :u_permissions_update, permissions_id= :permchecked");
$query->bindValue(':u_permissions_update', $u_permissions_update);
$query->bindValue(':permchecked', $permchecked);
$query->execute();
$_SESSION['success'] = "Work";
}
} else {
$_SESSION['success'] = "Not Working";
}
}
数据库权限用户
permissions_users_id | permissions_id | user_id
【问题讨论】:
-
问题开始于未选中的框不在数组中,因此您首先必须删除所有权限才能在后面插入它们,或者您可以有一个状态字段来保存复选框的状态,因此您可以使用 INSERT ON DUPLICATE 插入新权限或将状态更改为 1 ,当然在这里您也可以事先将所有状态设置为 0