This is my Welcome controller
class Welcome extends MY_Controller
{
function __construct()
{
parent::__construct();
$this->load->library('tank_auth');
}
function index()
{
if (!$this->tank_auth->is_logged_in()) {
redirect('/auth/login/');
} else {
$this->load->view('welcome', $player);
}
}
}
MY_Controller
class MY_Controller extends CI_Controller
{
function __construct()
{
parent::__construct();
$this->load->library('tank_auth');
if ($this->tank_auth->is_logged_in()) {
$player = $this->tank_auth->get_userdata($this->tank_auth->get_user_id());
if ($player === NULL) {
$this->tank_auth->logout();
}
}
}
}
I get:
A PHP Error was encountered
Severity: Notice
Message: Undefined variable: player
Filename: controllers/welcome.php
Line Number: 17
Hi,
A PHP Error was encountered
Severity: Notice
Message: Undefined variable: username
Filename: views/welcome.php
Line Number: 1
Do I really need to reassign all data ?? Are there any other way?
$playeris set in__construct()of yourMY_Controllerclass. How isindex()function inWelcomeclass supposed to get it’s value automatically?Instead define
$playeras a protected property in yourMY_Controllerclass so that every controller class extending it can use the value of$player.Now your Welcome class can use its value.