繁体   English   中英

使用codeigniter MVC插入数据库mysql后立即显示数据

[英]Show data immediately after insert to db mysql using codeigniter MVC

我有一个文本框和一个按钮,填写完文本框然后点击按钮,数据就会保存到mysql中。 我的问题是,当我点击保存按钮时,我保存的数据的 ID 会立即出现在该页面上。 我的意思是我插入 mysql 的数据的 ID

这是视图

<label for="userAnswer">Answer</label>
<textarea name="userAnswer" id="userAnswer" class="form-control"></textarea>
<button onclick="saveAnswer()">Submit Answer</button>

这是js

function saveAnswer(){
    var inputAnswer = $('#userAnswer').val();
        $.ajax({
            type: "GET",
            url: GLOBAL_URL + '/Session/saveAnswer?&inputAnswer='+inputAnswer,
            dataType: 'json',
    });
}

这是控制器

function saveAnswer(){
    $data = array(
        'id' => uuid(false),
        'answer' => $this->input->get_post("inputAnswer")
        );
        $this->db->insert('tableAnswer', $data);
}

谢谢

视图文件添加此代码

<input type="text" id="id">

控制器文件插入后,添加此代码

echo json_encode(array("val"=> $data['id']));

Javascript

$.ajax({
   type: "GET",
   url: GLOBAL_URL + '/Session/saveAnswer?&inputAnswer='+inputAnswer,
   dataType: 'json',
   success: function(val){
       document.getElementById("id").value = val.val;
   }
});

就是这样...

插入数据后,在模态中粘贴下面的行

    return $this->db->insert_id();

它将反映最后插入的数据 ID

您必须回显 id 而不是返回它以从 Js 获取它

echo $this->db->insert_id();

使用此代码:-

function saveAnswer(){
    var inputAnswer = $('#userAnswer').val();
        $.ajax({
            type: "GET",
            url: GLOBAL_URL + '/Session/saveAnswer?&inputAnswer='+inputAnswer,
            dataType: 'json',
            sucess:function(result){
               alert(result);
            },
    });
}

结果将携带您的 id 并将显示在警告框中,并且从 ajax 返回 id 使用以下代码:-

function saveAnswer(){
    $data = array(
        'id' => uuid(false),
        'answer' => $this->input->get_post("inputAnswer")
        );
        $this->db->insert('tableAnswer', $data);
        $id = $this->db->insert_id;
        if($id > 0){
            echo $id;
        }
}

如果您得到结果,请不要忘记勾选它,以便其他人可以获得帮助

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM