0

複数のデータベースを使用している場合、codeigniter でフォームを送信するのに問題があります

表示されるエラーは...

未定義のプロパティ

致命的なエラー: 非オブジェクトでのメンバー関数 insert() の呼び出し

ここに私のコードがあります

コントローラー(site.php)

    <?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');

    class Site extends CI_controller {

        public function __construct()
        {
            parent::__construct();
            // Your own constructor code
            $this->load->model("site_model");

            //$cms_db = $this->load->database('cms', TRUE); /* database conection for write operation */
            $site_db = $this->load->database('default', TRUE);  
        } 

        public function index()
        {
        $this->load->helper('form');

        $data = $this->_initialize_data();
        $this->load->vars($data);
        $this->load->view('site/index');
        }

        public function learner()
        {
            $cms_db = $this->load->database('cms', TRUE); /* database conection for write operation */
            if(isset($_POST['submit_learner']))
                {
                    $fname = $this->input->post("fname");
                    $mname = $this->input->post("mname");
                    $lname = $this->input->post("lname");
                    $ename = $this->input->post("ename");
                    $bday = $this->input->post("bday");
                    $opt = $this->input->post("opt");
                    $educ = $this->input->post("educ");
                    $als = $this->input->post("als");
                    $brgy = $this->input->post("brgy");
                    $guardian = $this->input->post("guardian");
                    $relation = $this->input->post("relation");
                    $benefit = $this->input->post("benefit");

                    $newdata = array('first_name'=>$fname,
                                        'middle_name'=>$mname,
                                        'last_name'=>$lname,
                                        'extention_name'=>$ename,
                                        'bday'=>$bday,
                                        'gender'=>$opt,
                                        'education'=>$educ,
                                        'als'=>$als,
                                        'brgy'=>$brgy,
                                        'guardian'=>$guardian,
                                        'relationship'=>$relation,
                                        'added_by'=>'OTH',
                                        'added_id'=>''
                                        );

                    $this->cms_db->insert('records', $newdata); 

                    redirect(base_url() . "site/index");
                }
        }

構成 (database.php)

    $active_group = 'default';
    $active_record = TRUE;

    $db['default']['hostname'] = 'localhost';
    $db['default']['username'] = 'root';
    $db['default']['password'] = '';
    $db['default']['database'] = 'dbsite';
    $db['default']['dbdriver'] = 'mysql';
    $db['default']['dbprefix'] = '';
    $db['default']['pconnect'] = TRUE;
    $db['default']['db_debug'] = TRUE;
    $db['default']['cache_on'] = FALSE;
    $db['default']['cachedir'] = '';
    $db['default']['char_set'] = 'utf8';
    $db['default']['dbcollat'] = 'utf8_general_ci';
    $db['default']['swap_pre'] = '';
    $db['default']['autoinit'] = TRUE;
    $db['default']['stricton'] = FALSE;

    $db['cms']['hostname'] = 'localhost';
    $db['cms']['username'] = 'root';
    $db['cms']['password'] = '';
    $db['cms']['database'] = 'dbcms';
    $db['cms']['dbdriver'] = 'mysql';
    $db['cms']['dbprefix'] = '';
    $db['cms']['pconnect'] = FALSE;
    $db['cms']['db_debug'] = TRUE;
    $db['cms']['cache_on'] = FALSE;
    $db['cms']['cachedir'] = '';
    $db['cms']['char_set'] = 'utf8';
    $db['cms']['dbcollat'] = 'utf8_general_ci';
    $db['cms']['swap_pre'] = '';
    $db['cms']['autoinit'] = TRUE;
    $db['cms']['stricton'] = FALSE;

私のコントローラー(site.php)が原因でエラーが発生しているようです

$this->cms_db->insert('records', $newdata); 

cms_db は未定義のプロパティであると言われています

私もこんな風にしてみました

$cms_db->insert('records',$newdata)

しかし、同じエラーがまだ表示されます

私は何かを逃していますか?

ありがとう

4

0 に答える 0