php - 如何通过codeigniter中的循环更改每个ajax请求中的列名称

标签 php mysql codeigniter

如何在ajax调用中每次切换列名?考虑数据库的列为 1,2,3,4.....30,并且在每个 ajax 请求上,我希望将单选按钮的响应保存在与其问题号相同的列中。即问题 1 的响应将存储在第 1 列中,依此类推。如何增加列索引作为问题。使用单个查询。

仅需要解决 Controller 查询。

正在使用 codeigniter。

在任务字段中获取问题 ID。

var quest = $('#mquest').val();

这是ajax调用

 $.ajax({
                     url: '<?php echo base_url();?>welcome/save_answer',
                     type: "post",
                     dataType: "html",
                     data:'hint='+hint+''+quest+'&<?php echo $this->security->get_csrf_token_name();?>=<?php echo $this->security->get_csrf_hash();?>',
                     success: function(data) {
                }
            });

这是 Controller :

函数 save_answer() {

         $data['$quest']=$this->input->post('hint');
         $this->base_model->save_update($data,$this->db->dbprefix('answers'));
 }

这是模型:

 function save_update($data, $table, $email = '')
{       

    // $this->db->insert('questions',$data);
    if ($this->db->insert($this->db->dbprefix($table), $data))
        return 1;
    else 
        return 0;

}

需要切换不同的列,即问题 1 存储在名为 1 的列中,依此类推。

最佳答案

假设你ajax发布的数据将是, 使用您的单选按钮值创建如下格式:

  • 对于问题 1:

单选按钮值为value="value-1"

Controller :

function somename(){
    //Get posted value
    $question=$this->input->post('question');

    //Explode it
    $column=explode("-",$question,2);

    //This will split the 1 from the question-1
    $column_id=$column[1];
    $data=array(
         'column_name'.$column_id=>$column[0]
    );
    $this->db->insert(Table_name,$data);
 }

关于php - 如何通过codeigniter中的循环更改每个ajax请求中的列名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32367844/

相关文章:

php - 删除子文件夹的代码点火器中的 index.php

php - 如何在循环中获取值(value)?

php - Laravel 查询生成器中的复杂查询

php - Mysql从多个表中选择,每个月创建一个新表

php - SQL 限制插入/更新的数据

php - 如何在 Codeigniter 中设置或仅上传 CSV 类型

php - 如何在wordpress中动态制作带有产品类别的菜单

php - 如何在代码点火器模型中跨多个函数实现数据库锁定?

mysql - 基于父子关系的 MySQL 的 Talend Open Studio 数据迁移

php - 混合身份验证 Codeigniter 说“验证用户时出错。”在我托管到服务器后。本地服务器工作正常