CodeIgniter's insert_batch() emits Warning: "array_keys(): The first argument should be an array" when provided a flat array
I wrote some code to execute a query on my db. My code is like follow
My_Controller
class MY_Controller extends CI_Controller
{
var $data;
var $header_data;
var $topmenu_data;
var $leftmenu_data;
var $rightmenu_data;
var $middle_data;
var $footer_data;
function __construct($props = array())
{
parent::__construct($props);
$this->data = array();
$this->header_data = array();
$this->topmenu_data = array();
$this->leftmenu_data= array();
$this->rightmenu_data= array();
$this->middle_data = array();
$this->footer_data = array();
$this->errorbox_data= array();
}
}
my groups controller
class Groups extends My_Controller
{
function __construct()
{
parent::__construct();
$this->load->model('model_group');
$this->load->model('model_post_comment');
$this->load->model('model_event');
}
function create_group()
{
$userId = 100;
$groupName = "TEST";
$data = array('user_id' => $userId,
'group_name' => $groupName,
'db_add_date' => date('Y-m-d H:i:s'),
'db_update_date' => date('Y-m-d H:i:s')
);
$r = $this->model_group->group_saveusers($data);
$array=array("result"=>$r);
echo json_encode($array);
}
}
here is my model
class Model_group extends CI_Model
{
function __construct()
{
// Call the Model constructor
parent::__construct();
}
function group_saveusers($group_data)
{
$this->db->insert_batch('my_table',$group_data);
if ($this->db->affected_rows() > 0) {
$group_id = $this->db->insert_id();
}
return $group_id;
}
}
Invoking the url below
http://mydomain/groups/create_group/
I get the error below
A PHP Error was encountered
Severity: Warning
Message: array_keys() [function.array-keys]: The first argument should be an array
Filename: database/DB_active_rec.php
Line Number: 1109
Am I missing something?