我有一个ajax,它会触发一个名为的函数,该函数运行更新并插入查询。当我从数据库中检查时,我意识到只有更新查询正在运行,但是插入查询再也不会运行。下面的代码还显示了我的insert
查询正确。
我的代码可能是什么问题,为什么更新查询有效而插入查询无效?
users.php
$('#click').click(function () {
var age = 12
$.ajax({
url: '<?php echo base_url('users/demand'); ?>',
data: '&age='+age,
type: 'POST'
}).done(function (result) {
var obj = $.parseJSON(result);
$.each(obj, function (index, element) {
$.ajax({
url: '<?php echo base_url('users/supply'); ?>',
data: '&number='+element.phone+'&email='+element.email+'&age='+element.age,
type: 'POST'
}).done(function (result) {
//refresh page for changes
});
});
});
});
function supply()
{
$value = $_POST['age'];
$query="update table SET `status` = 0 WHERE age IN ($value)";
$this->db->query($query);
$save_query="INSERT INTO table(`status`)VALUES ($value)";
$this->db->query($save_query);
}
答案 0 :(得分:0)
尝试在查询之间添加此内容
$this->db->reset_query();
-使用此重置查询对象
赞:
function supply()
{
$value = $_POST['age'];
$query="update table SET `status` = 0 WHERE age IN ($value)";
$this->db->query($query);
$this->db->reset_query();
$save_query="INSERT INTO table(`status`)VALUES ($value)";
$this->db->query($save_query);
}
OR
function supply() {
$value = $this->input->post('age');
$this->db->where_in("age", $value);
$this->db->update("table", array("status" => 0));
$this->db->reset_query();
$this->db->insert("table", array("status" => $value));
}