Here is my code:
function export_csv()
{
$st = $this->input->get('st'); //Start Date
$en = $this->input->get('en'); //End Date
$sTable = 'TABLE_NAME';
$this->load->dbutil();
$aColumns = array('tempdisplayid AS ucid','uui','campaign_name','location','caller_id','skill','calltime','answertime','TIMEDIFF(answertime,calltime) as timetoanswer','endtime','talktime','duration','fallback_rule','dialed_number','type','agent','agent_did','disposition','status','hangup_by','transfer','transfer_to','comments','dial_status','customer_status','agent_status','audio','AgentStatus','CustomerStatus','user_response');
$this->db->select('SQL_CALC_FOUND_ROWS '.str_replace(' , ', ' ', implode(', ', $aColumns)), false);
$query = $this->db->get_where($sTable, array('date(calltime) >=' =>$st,'date(calltime) <=' =>$en));
$new_report = $this->dbutil->csv_from_result($query);
write_file('/csv/records-'.$st.'to'.$en.'.csv', $new_report);
$this->load->helper('download');
force_download('records-'.$st.'to'.$en.'.csv', $new_report);
}
There is 64,145 Records in last 30 days. When I try to download the link becomes dead.is there any other method to bulk export unlimited record to csv
.
I tested this code upto 30000 after setting ini_set('max_execution_time', 0);It works fine.
Anything other than CSV like xls which can show bulk records.
I think there is problem in
max_execution_time
of codeignatorYou can increase it by using below code
Go to the file
Ans search for
set_time_limit
you find below code. Here you can increse your timeDownload this helper and place in
system/helpers/
and finally create csv like this