CI:参数计数错误

时间:2018-04-18 09:19:35

标签: php codeigniter

我正在开展一个项目&我遇到过这个问题“参数计数错误”。我已按代码检查代码,但没有找到任何内容。

控制器代码:

public function new_package(){
    $name = $this->input->post('name');
    $price = $this->input->post('price');
    $description = $this->input->post('description');

    if($name != '' && $price != '' && $description != ''){
        $packageData = $this->Process->package_add($name, $price, $description);

        if($packageData){
            $added = "Package Added";
            $this->session->set_flashdata('added', $added);
            redirect('Packages');
        }
    }
    else{
        $blank = "Please Fill Required Fields.";
        $this->session->set_flashdata('blank', $blank);
        redirect('Packages');
    }
}

模态代码:

public function package_add($name, $price, $description){
    $insertData = array(
        'title' => $name,
        'price' => $price,
        'description' => $description
    );

    $insertQuery = $this->db->insert('packages', $insertData);

    if($insertQuery){
        return TRUE;
    }
    else{
        return FALSE;
    }
}

模态名称流程

  

错误:“”类型:ArgumentCountError

     

消息:函数Process :: package_add(),0的参数太少   传入   C:\ XAMPP \ htdocs中\ apn_new \后端\应用\控制器\ Packages.php   在第32行和预期的3个

     

文件名:   C:\ XAMPP \ htdocs中\ apn_new \后端\应用\模型\ Process.php

     

行号:299“”

我在这个网站上搜索了这个类型的问题,但我找不到我的问题解决方案。提交表单之前出现此问题。请帮助我。

谢谢

1 个答案:

答案 0 :(得分:1)

在控制器中创建插入数组

Controller.php这样

public function new_package(){
    $name = $this->input->post('name');
    $price = $this->input->post('price');
    $description = $this->input->post('description');

    if($name != '' && $price != '' && $description != ''){
        $insertData = array(
        'title' => $name,
        'price' => $price,
        'description' => $description
        );
        $packageData = $this->Process->package_add($insertData);

        if($packageData){
            $added = "Package Added";
            $this->session->set_flashdata('added', $added);
            redirect('Packages');
        }
    }
    else{
        $blank = "Please Fill Required Fields.";
        $this->session->set_flashdata('blank', $blank);
        redirect('Packages');
    }
}

Model.php

public function package_add($insertData){

    $insertQuery = $this->db->insert('packages', $insertData);

    if($insertQuery){
        return TRUE;
    }
    else{
        return FALSE;
    }
}