Here is a snippet of my code:
<?php
if (!defined('BASEPATH')) {
exit('No direct script access allowed');
}
class sample{
function __construct() {
$this->ci = & get_instance();
}
public $name;
public $style;
function set_data($data)
{
/* List of parameters that you can set */
$this->name = (isset($data['name']) ? $data['name']: ''); // Set select name
$this->style = (isset($data['style']) ? $data['style']: ''); // Set select style
}
function select_both_dropdown()
{
$select = '<select name="'.$this->name.'" class="chzn-select" style="'.$this->style.'">';
$select .= '<option value=""></option>';
$select .= '</select>';
return $select;
}
Controller:
$data['select'] = $this->sample->select_both_dropdown(array(
'name' => 'eventselect',
'style' => 'min-width: 247px;'
));
How it is being loaded in controller:
function _construct() {
parent::_construct();
$this->load->library(‘tank_auth’);
$this->load->library(‘sample’);
}
When the select loads on the screen, nothing is filled in. No name, no style etc.. What am I doing wrong?
You need to reference them properly;
In the library;
In your controller it would be something like
$this->sample->nameor$this->sample->styleBut the $select is not an attribute or being returned so will not be avaiable.
UPDATE – based on comments
controller;
ANOTHER UPDATE:
I would then change set_data() to private instead of public.