Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public function export($id = null, $pag = 1)
- {
- $tickets = $this->db->select('t.*, g.group_name, p.first_name, p.last_name')
- ->from('poll_tickets AS t')
- ->join('poll_groups AS g', 'g.id = t.ticket_group_id', 'left')
- ->join('profiles AS p', 'p.user_id = t.created_by', 'left')
- ->where('t.ticket_group_id', $id)
- ->get()
- ->result();
- $data = array();
- $i = 0;
- @mysql_connect("localhost","intranet","Poblado2017");
- mysql_select_db("intranet_elpoblado");
- $cons="SELECT group_name,created FROM `default_poll_groups` where id='$id'";
- $resu=mysql_query($cons);
- while($row=mysql_fetch_row($resu)){
- $nomb_encu=$row[0];
- $fech_regi=$row[1];
- }
- $cons="SELECT id,name FROM `default_poll_custom_fields` where group_id='$id' order by 1";
- $resu=mysql_query($cons);
- $cont_fila_data=0;
- $cont_colu_data=4;
- $data[0][0]="Datos de la encuesta";
- $data[0][1]="Usuario";
- $data[0][2]="Fecha";
- $preguntas=array();
- $total_preguntas=0;
- while($row=mysql_fetch_row($resu)){
- $id_field=$row[0];
- $name=utf8_encode($row[1]);
- $preguntas[$total_preguntas]=$id_field;
- $total_preguntas+=1;
- $data[$cont_fila_data][$cont_colu_data]=$name;
- $cont_colu_data+=1;
- }
- // Consultar usuarios que han realizado la encuesta
- $fila=1;
- $cons="SELECT distinct a.user_id,first_name,last_name FROM `default_poll_custom_user` a,default_profiles b where a.user_id=b.user_id and field_id in (select id from default_poll_custom_fields where group_id='$id') and first_name is not null and first_name!='' order by 2";
- $resu=mysql_query($cons);
- while($row=mysql_fetch_row($resu)){
- $user_id=$row[0];
- $first_name=utf8_encode($row[1]);
- $last_name=utf8_encode($row[2]);
- $colu=3;
- // Respuestas de los usuarios
- $data[$fila][0]=$nomb_encu;
- $data[$fila][1]=$first_name." ".$last_name;
- $data[$fila][2]=$fech_regi;
- for($c=0;$c<$total_preguntas;$c++){
- $pregunta=$preguntas[$c];
- $cons2="SELECT value FROM `default_poll_custom_user` where user_id='$user_id' and field_id='$pregunta' order by ticket_id desc limit 1";
- $resu2=mysql_query($cons2);
- $tota2=mysql_num_rows($resu2);
- if($tota2>0){
- while($row2=mysql_fetch_row($resu2)){
- $valor=$row2[0];
- if(count(explode('value',$valor))>1)
- $valor="";
- $data[$fila][$colu]=$valor;
- $colu+=1;
- }
- }else{
- $valor="";
- $data[$fila][$colu]=$valor;
- $colu+=1;
- }
- }
- $fila+=1;
- }
- $this->load->library(array('PHPExcel_1.8.0/PHPExcel'));
- $doc = new PHPExcel();
- $doc->setActiveSheetIndex(0);
- $doc->getActiveSheet()->fromArray($data, null, 'A1');
- header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet');
- header('Content-Disposition: attachment;filename="export.xls"');
- header('Cache-Control: max-age=0');
- $writer = PHPExcel_IOFactory::createWriter($doc, 'Excel5');
- $writer->save('php://output');
- }
Add Comment
Please, Sign In to add comment