在Codeigniter中将数组从控制器发送到模型时出现问题

时间:2019-01-26 00:53:02

标签: php arrays ajax model controller

晚上好。出于学习目的,我正在构建一个CRUD脚本,并可能使用ajax拖放行。在将数据从控制器发送到模型时,我的模型函数无法处理该数组,因此遇到了问题。

控制器功能:

parse_dates=True

控制器输出上的var_dump:

public function from_ajax() {
    $this->load->model('model');
    $ordem = $this->input->post('ordem');
    parse_str($ordem, $array_ordenado);
    var_dump($array_ordenado); //testing only
    $resultado = $this->model->reordem($array_ordenado);
    echo json_encode($resultado);           
}

这是我的模型函数:

array(1) { ["teste"]=> array(4) { [0]=> string(1) "1" [1]=> string(1) "3" [2]=> string(1) "2" [3]=> string(1) "4" } }

我该如何在我的模型函数上处理此数组转储,以便获得所需的值(“”中的值)?

我也收到此错误: php/database error 谢谢您的时间!

1 个答案:

答案 0 :(得分:1)

您需要将数组转换为字符串

$array_ordenado['teste'] = implode(",", $array_ordenado['teste']);

数据库不支持数组数据类型。上面的代码会将字段“ teste”的值从数组转换为以逗号为分隔符的字符串。