Rafael - Developer Rafael - Developer - 3 months ago 20
PHP Question

CodeIgniter connection to database

I decided end my cooperation with Doctrine 2.3 and now I would like to make connection to database using only CodeIgniter have you got idea where is problem with my code?

This Error I get:

A PHP Error was encountered

Severity: Notice

Message: Undefined property: Hello::$db

Filename: core/Model.php

Line Number: 51


Database.php

$db['default']['hostname'] = 'localhost:8080';
$db['default']['username'] = 'root';
$db['default']['password'] = '';
$db['default']['database'] = 'ci_doctrine';
$db['default']['dbdriver'] = 'mysql';


Controller

<?php
// system/application/controllers/hello.php

class Hello extends CI_Controller {

public function __construct()
{
parent::__construct();
}
function world() {
echo "Hello CodeIgniter!";
}

function user_test() {

$this->load->model('user');

$this->user->save_User('username','password','first_name','last_name');

}
}

?>


Model - table name in database "user"

<?php
// system/application/models/user.php

class User extends CI_Model {

function __construct()
{
// Call the Model constructor
parent::__construct();
}

function save_User($username,$password,$fName,$lName) {

$this->username = $username;
$this->password = $password;
$this->first_name = $fName;
$this->last_name = $lName;
$this->db->insert('user', $this);
}

}
?>

Answer

You need to load the database library:

config/autoload.php

$autoload['libraries'] = array('database');