将复选框字段存储到数据库中

时间:2018-12-05 06:21:54

标签: javascript php html database

当前,数据库中的复选框字段存储为[“ B”],[“ C”]。我想知道是否有可能将复选框字段仅存储为BC。

$(document).ready(function() {
    "use strict";

    var role;
});

function savenewuser() {
    var url = serverURL() + "/newadmin.php";
    checklist = new Array();
    $('input:checkbox[name="roles[]"]:checked').each(function() {
        checklist.push($(this).val());
    });

    role = JSON.stringify(checklist);

    $.ajax({
        url: url,
        type: 'GET',
        data: {
            "role": role,
        },
        success: function(arr) {
            _getNewUserResult(arr);
        },
        error: function() {
            alert("error");
        }
    });
}

<div><label for="rights">Rights</label></div>
<input type="checkbox" name="roles[]" value="A">Bookings
<input type="checkbox" name="roles[]" value="B">Incident Booking
<input type="checkbox" name="roles[]" value="C">Edit User

2 个答案:

答案 0 :(得分:1)

由于看起来您是将role的值直接传递到数据库中,而不是使用JSON.stringify来创建role,因此您可以使用Array.join方法:

var checklist = ['B', 'C'];
var role = checklist.join('');
console.log(role);
console.log(JSON.stringify(checklist));

答案 1 :(得分:0)

是的

当前,您正在对元素数组使用JSON.stringify,这将为您提供“ [“ B”],[“ C”]“。

尝试使用join作为示例,在对数组进行字符串化之前为其创建字符串:

role = JSON.stringify(checklist.join(""));

输出:

"BC"

关于丹尼尔。