gpt4 book ai didi

javascript - Codeigniter 2 - 插入表会创建重复项

转载 作者:行者123 更新时间:2023-11-28 23:59:45 25 4
gpt4 key购买 nike

因此我创建了一个简单的计数表,其中包含三列“id”、“type”、“value”。当有人点击一个按钮时,它会在此表中创建一个新行。

调用我的 Action 的 javascript:

        $('#myModal .ux-options .btn').on('click', function(){
var value = $(this).data('value');
// Update the session variable via ajax
$.ajax({
type: 'POST',
dataType: 'json',
url: 'applications/tallyAnswer',
cache: false,
data: {selection: value}
});

$('#myModal').modal('hide');
});

Controller Action :

    function tallyAnswer() {
$selection = $this->input->post('selection');
if ($selection) {
$this->tally->updateTally(array(
'type' => 'ux-select',
'value' => $selection
));
$this->session->set_userdata(array(
'answeredQuestion' => 'true'
));
$response = array(
'status' => 'success',
'selection' => $selection
);
} else {
$response = array(
'status' => 'fail',
'data' => array(
'selection' => 'Must choose a selection'
)
);
}
$this->output->set_content_type('application/json');
$this->output->set_output(json_encode($response));
}

模型方法:

public function updateTally($tally) {
$this->db->insert('tallies', $tally);
}

所以一个人点击一个按钮,它会在表格中插入一个新行。简单的。然而,发生的事情是该人单击按钮并插入两个相同的行。我检查过,只进行了一次 ajax 调用。我不确定为什么会这样。我被迫使用旧的 codeigniter 代码,所以我认为使用 2.2 可能是个问题。

最佳答案

看来这实际上是 codeigniter 2 的一个老问题:https://github.com/bcit-ci/CodeIgniter/issues/2473

在旧版本中,如果您尝试插入带有单词“select”的数据,那么您会得到多次插入。我将“类型”更改为“ux-choice”,它解决了我的问题。希望这对以后遇到此问题的任何人都有帮助!!

关于javascript - Codeigniter 2 - 插入表会创建重复项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30307761/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com