php - 如何使用 codigniter 在表中插入字符串和数组值
问题描述
我有一个多维数组,该多维数组有四个数组,每个数组有两个字符串值,应该插入表的列名。
但我的问题是,一个数组的四个数组有两个数组,一个数组,一个数组有两个字符串值,所以我的问题是如何插入多维数组的值
Array
(
[0] => Array
(
[stu_ans_id] => 1
[stu_answer] => True
)
[1] => Array
(
[stu_ans_id] => 2
[stu_answer] => B
)
[2] => Array
(
[stu_ans_id] => 3
[stu_answer] => hi
)
[3] => Array
(
[stu_ans_id] => 4
[stu_answer] => Array
(
[2] => B
[3] => C
)
)
)
实际上这四种类型的数组是测验问题的答案,前 3 个数组是文本框和单选按钮,但最后一个数组是复选框值,所以对我来说很复杂,所以请帮助解决这个问题
public function add_stu_ans()
{
$id = $values['stu_ans_id'] = $this->input->post('qstn_id');
$ans = $values['stu_answer'] = $this->input->post('ans');
$testArr=array_combine($id,$ans);
$arr=[];
foreach ($testArr as $key => $value)
{
$arr[]=array('stu_ans_id'=>$key,'stu_answer'=>$value);
}
$this->Common_model->insert_answer('student',$arr);
$this->session->set_flashdata('message_name' , 'Your Data is Inserted');
redirect('Quiz/tot_marks');
}
是我的控制器...
public function insert_answer($table, $arr)
{
$result = $this->db->insert_batch($table, $arr);
return $this->db->affected_rows();
}
这是我的模型
解决方案
使用 json_encode php 函数将数组转换为字符串格式并插入到数据库中。
推荐阅读
- javascript - 如何避免在 Webpack 中的异步中检查等待
- azure-data-factory - 如何从数据流(Azure 数据工厂)中的 json 源中删除根?
- javascript - 彼此垂直绘制条形图d3.js
- git - 从干净的工作目录执行 git pull 后,文件传递到修改
- python - Cron 不会自动启动
- node.js - 为什么我的方法不能解决间隔调度算法?
- c# - 在 C# 中进行泛型搜索的函数
- angular - Angular cdk drap drop - 动态占位符高度
- c++ - C++ 使用 lambda 进行排序很慢
- android - 图像保存在目录中但不预览