Pregunta:
Fecha: 17-07-2018 18:11:19
(En Español)
Los campos que imprime FALSO son: nacionalidad, provincia, distrito y corregimiento.
Votos: 0 - Respuestas: 2 - Vistas: 8 Compartir en: Google Facebook Twitter LinkedIn Link
algunos campos de phpexcel me imprime FALSO[Resuelta]
Buenas estoy creando un reporte en phpexcel de mi base de datos y algunos datos me imprime FALSO , para ver si me pueden ayudar xfa.Los campos que imprime FALSO son: nacionalidad, provincia, distrito y corregimiento.
<?php
//Incluimos librería y archivo de conexión
require 'Classes/PHPExcel.php';
require 'conexion.php';
//Consulta
$sql = "SELECT pe.id_persona, pe.nombres, pe.apellido, pe.cedula, pe.fecha_nac, pe.sexo, pe.nacionalidad, pe.estado_civil, pe.provincia, pe.distrito, pe.corregimiento, pe.correo, pe.telefono, pe.celular,
ti.year_ing_u, ti.facultad_egre, ti.sede, ti.year_ing_c, ti.carrera_egre, ti.indice, ti.turno, ti.modalidad, ti.trab_final, ti.fec_rev_credito, ti.otro_titulo, ti.universidad, ti.titulo_obt, ti.year_titulo, ti.bachiller, ti.centro_educ, ti.ingles, ti.compu, ti.cant_pc, ti.internet,
so.durante_estud, so.usted_trabajo, so.trabajas, so.ocupacion, so.empresa_lab, so.actividad_emp, so.condicion, so.salario_mens, so.relacion_carre, so.tiempo_trab, so.financiado, so.intitu_financ, so.mensualidad, so.jefe_hogar, so.hijos, so.post_grado, so.especialidad
FROM persona pe
INNER JOIN titulacion ti
ON ti.id_titulo= pe.id_persona
INNER JOIN socioecon so
ON so.id_socioecon= ti.id_titulo ";
$resultado = $mysqli->query($sql);
$fila = 7; //Establecemos en que fila inciara a imprimir los datos
$gdImage = imagecreatefrompng('imagen/logo3.png');//Logotipo
//Objeto de PHPExcel
$objPHPExcel = new PHPExcel();
//Propiedades de Documento
$objPHPExcel->getProperties()->setCreator("Francis Fernandez")->setDescription("Reporte de egresados");
//Establecemos la pestaña activa y nombre a la pestaña
$objPHPExcel->setActiveSheetIndex(0);
$objPHPExcel->getActiveSheet()->setTitle("Egresados registro");
$objDrawing = new PHPExcel_Worksheet_MemoryDrawing();
$objDrawing->setName('Logotipo');
$objDrawing->setDescription('Logotipo');
$objDrawing->setImageResource($gdImage);
$objDrawing->setRenderingFunction(PHPExcel_Worksheet_MemoryDrawing::RENDERING_PNG);
$objDrawing->setMimeType(PHPExcel_Worksheet_MemoryDrawing::MIMETYPE_DEFAULT);
$objDrawing->setHeight(100);
$objDrawing->setCoordinates('B1');
$objDrawing->setWorksheet($objPHPExcel->getActiveSheet());
$estiloTituloReporte = array(
'font' => array(
'name' => 'Arial',
'bold' => true,
'italic' => false,
'strike' => false,
'size' =>13
),
'fill' => array(
'type' => PHPExcel_Style_Fill::FILL_SOLID
),
'borders' => array(
'allborders' => array(
'style' => PHPExcel_Style_Border::BORDER_NONE
)
),
'alignment' => array(
'horizontal' => PHPExcel_Style_Alignment::HORIZONTAL_CENTER,
'vertical' => PHPExcel_Style_Alignment::VERTICAL_CENTER
)
);
$estiloTituloColumnas = array(
'font' => array(
'name' => 'Arial',
'bold' => true,
'size' =>10,
'color' => array(
'rgb' => 'FFFFFF'
)
),
'fill' => array(
'type' => PHPExcel_Style_Fill::FILL_SOLID,
'color' => array('rgb' => '538DD5')
),
'borders' => array(
'allborders' => array(
'style' => PHPExcel_Style_Border::BORDER_THIN
)
),
'alignment' => array(
'horizontal'=> PHPExcel_Style_Alignment::HORIZONTAL_CENTER,
'vertical' => PHPExcel_Style_Alignment::VERTICAL_CENTER
)
);
$estiloInformacion = new PHPExcel_Style();
$estiloInformacion->applyFromArray( array(
'font' => array(
'name' => 'Arial',
'color' => array(
'rgb' => '000000'
)
),
'fill' => array(
'type' => PHPExcel_Style_Fill::FILL_SOLID
),
'borders' => array(
'allborders' => array(
'style' => PHPExcel_Style_Border::BORDER_THIN
)
),
'alignment' => array(
'horizontal'=> PHPExcel_Style_Alignment::HORIZONTAL_CENTER,
'vertical' => PHPExcel_Style_Alignment::VERTICAL_CENTER
)
));
$objPHPExcel->getActiveSheet()->getStyle('A1:E4')->applyFromArray($estiloTituloReporte);
$objPHPExcel->getActiveSheet()->getStyle('A6:AY6')->applyFromArray($estiloTituloColumnas);
$objPHPExcel->getActiveSheet()->setCellValue('B3', 'REPORTE DE EGRESADOS');
$objPHPExcel->getActiveSheet()->mergeCells('B3:D3');
$objPHPExcel->getActiveSheet()->getColumnDimension('A')->setWidth(10);
$objPHPExcel->getActiveSheet()->setCellValue('A6', 'ID');
$objPHPExcel->getActiveSheet()->getColumnDimension('B')->setWidth(30);
$objPHPExcel->getActiveSheet()->setCellValue('B6', 'NOMBRE');
$objPHPExcel->getActiveSheet()->getColumnDimension('C')->setWidth(35);
$objPHPExcel->getActiveSheet()->setCellValue('C6', 'APELLIDO');
$objPHPExcel->getActiveSheet()->getColumnDimension('D')->setWidth(15);
$objPHPExcel->getActiveSheet()->setCellValue('D6', 'CEDULA');
$objPHPExcel->getActiveSheet()->getColumnDimension('E')->setWidth(25);
$objPHPExcel->getActiveSheet()->setCellValue('E6', 'FECHA DE NAC.');
$objPHPExcel->getActiveSheet()->getColumnDimension('F')->setWidth(13);
$objPHPExcel->getActiveSheet()->setCellValue('F6', 'SEXO');
$objPHPExcel->getActiveSheet()->getColumnDimension('G')->setWidth(25);
$objPHPExcel->getActiveSheet()->setCellValue('G6', 'NACIONALIDAD');
$objPHPExcel->getActiveSheet()->getColumnDimension('H')->setWidth(18);
$objPHPExcel->getActiveSheet()->setCellValue('H6', 'ESTADO CIVIL');
$objPHPExcel->getActiveSheet()->getColumnDimension('I')->setWidth(25);
$objPHPExcel->getActiveSheet()->setCellValue('I6', 'PROVINCIA');
$objPHPExcel->getActiveSheet()->getColumnDimension('J')->setWidth(25);
$objPHPExcel->getActiveSheet()->setCellValue('J6', 'DISTRITO');
$objPHPExcel->getActiveSheet()->getColumnDimension('K')->setWidth(25);
$objPHPExcel->getActiveSheet()->setCellValue('K6', 'CORREGIMIENTO');
$objPHPExcel->getActiveSheet()->getColumnDimension('L')->setWidth(35);
$objPHPExcel->getActiveSheet()->setCellValue('L6', 'E-MAIL');
$objPHPExcel->getActiveSheet()->getColumnDimension('M')->setWidth(20);
$objPHPExcel->getActiveSheet()->setCellValue('M6', 'TELEFONO');
$objPHPExcel->getActiveSheet()->getColumnDimension('N')->setWidth(20);
$objPHPExcel->getActiveSheet()->setCellValue('N6', 'CELULAR');
$objPHPExcel->getActiveSheet()->getColumnDimension('O')->setWidth(20);
$objPHPExcel->getActiveSheet()->setCellValue('O6', 'AÑO ING. UNIV.');
$objPHPExcel->getActiveSheet()->getColumnDimension('P')->setWidth(40);
$objPHPExcel->getActiveSheet()->setCellValue('P6', 'FACULTAD');
$objPHPExcel->getActiveSheet()->getColumnDimension('Q')->setWidth(30);
$objPHPExcel->getActiveSheet()->setCellValue('Q6', 'SEDE');
$objPHPExcel->getActiveSheet()->getColumnDimension('R')->setWidth(20);
$objPHPExcel->getActiveSheet()->setCellValue('R6', 'AÑO ING.CARRE');
$objPHPExcel->getActiveSheet()->getColumnDimension('S')->setWidth(50);
$objPHPExcel->getActiveSheet()->setCellValue('S6', 'CARRERA');
$objPHPExcel->getActiveSheet()->getColumnDimension('T')->setWidth(10);
$objPHPExcel->getActiveSheet()->setCellValue('T6', 'INDICE');
$objPHPExcel->getActiveSheet()->getColumnDimension('U')->setWidth(20);
$objPHPExcel->getActiveSheet()->setCellValue('U6', 'TURNO');
$objPHPExcel->getActiveSheet()->getColumnDimension('V')->setWidth(20);
$objPHPExcel->getActiveSheet()->setCellValue('V6', 'MODALIDAD');
$objPHPExcel->getActiveSheet()->getColumnDimension('W')->setWidth(30);
$objPHPExcel->getActiveSheet()->setCellValue('W6', 'TRABAJO FINAL');
$objPHPExcel->getActiveSheet()->getColumnDimension('X')->setWidth(20);
$objPHPExcel->getActiveSheet()->setCellValue('X6', 'FECHA DE CRED.');
$objPHPExcel->getActiveSheet()->getColumnDimension('Y')->setWidth(18);
$objPHPExcel->getActiveSheet()->setCellValue('Y6', 'OTRO TITULO');
$objPHPExcel->getActiveSheet()->getColumnDimension('Z')->setWidth(30);
$objPHPExcel->getActiveSheet()->setCellValue('Z6', 'UNIVERSIDAD');
$objPHPExcel->getActiveSheet()->getColumnDimension('AA')->setWidth(26);
$objPHPExcel->getActiveSheet()->setCellValue('AA6', 'TITULO OBTENIDO');
$objPHPExcel->getActiveSheet()->getColumnDimension('AB')->setWidth(15);
$objPHPExcel->getActiveSheet()->setCellValue('AB6', 'AÑO TITULO');
$objPHPExcel->getActiveSheet()->getColumnDimension('AC')->setWidth(25);
$objPHPExcel->getActiveSheet()->setCellValue('AC6', 'BACHILLER');
$objPHPExcel->getActiveSheet()->getColumnDimension('AD')->setWidth(20);
$objPHPExcel->getActiveSheet()->setCellValue('AD6', 'CENTRO EDUCATIVO');
$objPHPExcel->getActiveSheet()->getColumnDimension('AE')->setWidth(13);
$objPHPExcel->getActiveSheet()->setCellValue('AE6', 'INGLES');
$objPHPExcel->getActiveSheet()->getColumnDimension('AF')->setWidth(18);
$objPHPExcel->getActiveSheet()->setCellValue('AF6', 'COMPUTADORA');
$objPHPExcel->getActiveSheet()->getColumnDimension('AG')->setWidth(13);
$objPHPExcel->getActiveSheet()->setCellValue('AG6', 'N° COMPU.');
$objPHPExcel->getActiveSheet()->getColumnDimension('AH')->setWidth(13);
$objPHPExcel->getActiveSheet()->setCellValue('AH6', 'INTERNET');
$objPHPExcel->getActiveSheet()->getColumnDimension('AI')->setWidth(25);
$objPHPExcel->getActiveSheet()->setCellValue('AI6', 'DURANTE SUS EST.');
$objPHPExcel->getActiveSheet()->getColumnDimension('AJ')->setWidth(25);
$objPHPExcel->getActiveSheet()->setCellValue('AJ6', 'USTED TRABAJO');
$objPHPExcel->getActiveSheet()->getColumnDimension('AK')->setWidth(15);
$objPHPExcel->getActiveSheet()->setCellValue('AK6', 'TRABAJAS');
$objPHPExcel->getActiveSheet()->getColumnDimension('AL')->setWidth(40);
$objPHPExcel->getActiveSheet()->setCellValue('AL6', 'OCUPACIÓN');
$objPHPExcel->getActiveSheet()->getColumnDimension('AM')->setWidth(30);
$objPHPExcel->getActiveSheet()->setCellValue('AM6', 'EMPRESA LABORA');
$objPHPExcel->getActiveSheet()->getColumnDimension('AN')->setWidth(40);
$objPHPExcel->getActiveSheet()->setCellValue('AN6', 'ACT. DE LA EMPRESA');
$objPHPExcel->getActiveSheet()->getColumnDimension('AO')->setWidth(20);
$objPHPExcel->getActiveSheet()->setCellValue('AO6', 'CONDICIÓN');
$objPHPExcel->getActiveSheet()->getColumnDimension('AP')->setWidth(23);
$objPHPExcel->getActiveSheet()->setCellValue('AP6', 'SALARIO MENSUAL');
$objPHPExcel->getActiveSheet()->getColumnDimension('AQ')->setWidth(20);
$objPHPExcel->getActiveSheet()->setCellValue('AQ6', 'RELACIÓN CARRERA');
$objPHPExcel->getActiveSheet()->getColumnDimension('AR')->setWidth(23);
$objPHPExcel->getActiveSheet()->setCellValue('AR6', 'TIEMPO TRABAJO');
$objPHPExcel->getActiveSheet()->getColumnDimension('AS')->setWidth(28);
$objPHPExcel->getActiveSheet()->setCellValue('AS6', 'FINANCIAMIENTO');
$objPHPExcel->getActiveSheet()->getColumnDimension('AT')->setWidth(25);
$objPHPExcel->getActiveSheet()->setCellValue('AT6', 'INSTITUTO FINANCIA');
$objPHPExcel->getActiveSheet()->getColumnDimension('AU')->setWidth(15);
$objPHPExcel->getActiveSheet()->setCellValue('AU6', 'MENSUALIDAD');
$objPHPExcel->getActiveSheet()->getColumnDimension('AV')->setWidth(15);
$objPHPExcel->getActiveSheet()->setCellValue('AV6', 'JEFE DE HOGAR');
$objPHPExcel->getActiveSheet()->getColumnDimension('AW')->setWidth(12);
$objPHPExcel->getActiveSheet()->setCellValue('AW6', 'HIJOS');
$objPHPExcel->getActiveSheet()->getColumnDimension('AX')->setWidth(26);
$objPHPExcel->getActiveSheet()->setCellValue('AX6', 'INTERES POST_GRADO');
$objPHPExcel->getActiveSheet()->getColumnDimension('AY')->setWidth(33);
$objPHPExcel->getActiveSheet()->setCellValue('AY6', 'QUE ESPECIALIDAD');
//Recorremos los resultados de la consulta y los imprimimos
while($rows = $resultado->fetch_assoc()){
$objPHPExcel->getActiveSheet()->setCellValue('A'.$fila, $rows['id_persona']);
$objPHPExcel->getActiveSheet()->setCellValue('B'.$fila, $rows['nombres']);
$objPHPExcel->getActiveSheet()->setCellValue('C'.$fila, $rows['apellido']);
$objPHPExcel->getActiveSheet()->setCellValue('D'.$fila, $rows['cedula']);
$objPHPExcel->getActiveSheet()->setCellValue('E'.$fila, $rows['fecha_nac']);
$objPHPExcel->getActiveSheet()->setCellValue('F'.$fila, $rows['sexo']);
$objPHPExcel->getActiveSheet()->setCellValue('G'.$fila, $rows['nacionalidad']);
$objPHPExcel->getActiveSheet()->setCellValue('H'.$fila, $rows['estado_civil']);
$objPHPExcel->getActiveSheet()->setCellValue('I'.$fila, $rows['provincia']);
$objPHPExcel->getActiveSheet()->setCellValue('J'.$fila, $rows['distrito']);
$objPHPExcel->getActiveSheet()->setCellValue('K'.$fila, $rows['corregimiento']);
$objPHPExcel->getActiveSheet()->setCellValue('L'.$fila, $rows['correo']);
$objPHPExcel->getActiveSheet()->setCellValue('M'.$fila, $rows['telefono']);
$objPHPExcel->getActiveSheet()->setCellValue('N'.$fila, $rows['celular']);
$objPHPExcel->getActiveSheet()->setCellValue('O'.$fila, $rows['year_ing_u']);
$objPHPExcel->getActiveSheet()->setCellValue('P'.$fila, $rows['facultad_egre']);
$objPHPExcel->getActiveSheet()->setCellValue('Q'.$fila, $rows['sede']);
$objPHPExcel->getActiveSheet()->setCellValue('R'.$fila, $rows['year_ing_c']);
$objPHPExcel->getActiveSheet()->setCellValue('S'.$fila, $rows['carrera_egre']);
$objPHPExcel->getActiveSheet()->setCellValue('T'.$fila, $rows['indice']);
$objPHPExcel->getActiveSheet()->setCellValue('U'.$fila, $rows['turno']);
$objPHPExcel->getActiveSheet()->setCellValue('V'.$fila, $rows['modalidad']);
$objPHPExcel->getActiveSheet()->setCellValue('W'.$fila, $rows['trab_final']);
$objPHPExcel->getActiveSheet()->setCellValue('X'.$fila, $rows['fec_rev_credito']);
$objPHPExcel->getActiveSheet()->setCellValue('Y'.$fila, $rows['otro_titulo']);
$objPHPExcel->getActiveSheet()->setCellValue('Z'.$fila, $rows['universidad']);
$objPHPExcel->getActiveSheet()->setCellValue('AA'.$fila, $rows['titulo_obt']);
$objPHPExcel->getActiveSheet()->setCellValue('AB'.$fila, $rows['year_titulo']);
$objPHPExcel->getActiveSheet()->setCellValue('AC'.$fila, $rows['bachiller']);
$objPHPExcel->getActiveSheet()->setCellValue('AD'.$fila, $rows['centro_educ']);
$objPHPExcel->getActiveSheet()->setCellValue('AE'.$fila, $rows['ingles']);
$objPHPExcel->getActiveSheet()->setCellValue('AF'.$fila, $rows['compu']);
$objPHPExcel->getActiveSheet()->setCellValue('AG'.$fila, $rows['cant_pc']);
$objPHPExcel->getActiveSheet()->setCellValue('AH'.$fila, $rows['internet']);
$objPHPExcel->getActiveSheet()->setCellValue('AI'.$fila, $rows['durante_estud']);
$objPHPExcel->getActiveSheet()->setCellValue('AJ'.$fila, $rows['usted_trabajo']);
$objPHPExcel->getActiveSheet()->setCellValue('AK'.$fila, $rows['trabajas']);
$objPHPExcel->getActiveSheet()->setCellValue('AL'.$fila, $rows['ocupacion']);
$objPHPExcel->getActiveSheet()->setCellValue('AM'.$fila, $rows['empresa_lab']);
$objPHPExcel->getActiveSheet()->setCellValue('AN'.$fila, $rows['actividad_emp']);
$objPHPExcel->getActiveSheet()->setCellValue('AO'.$fila, $rows['condicion']);
$objPHPExcel->getActiveSheet()->setCellValue('AP'.$fila, $rows['salario_mens']);
$objPHPExcel->getActiveSheet()->setCellValue('AQ'.$fila, $rows['relacion_carre']);
$objPHPExcel->getActiveSheet()->setCellValue('AR'.$fila, $rows['tiempo_trab']);
$objPHPExcel->getActiveSheet()->setCellValue('AS'.$fila, $rows['financiado']);
$objPHPExcel->getActiveSheet()->setCellValue('AT'.$fila, $rows['intitu_financ']);
$objPHPExcel->getActiveSheet()->setCellValue('AU'.$fila, $rows['mensualidad']);
$objPHPExcel->getActiveSheet()->setCellValue('AV'.$fila, $rows['jefe_hogar']);
$objPHPExcel->getActiveSheet()->setCellValue('AW'.$fila, $rows['hijos']);
$objPHPExcel->getActiveSheet()->setCellValue('AX'.$fila, $rows['post_grado']);
$objPHPExcel->getActiveSheet()->setCellValue('AY'.$fila, $rows['especialidad']);
$fila++; //Sumamos 1 para pasar a la siguiente fila
}
$fila = $fila-1;
$objPHPExcel->getActiveSheet()->setSharedStyle($estiloInformacion, "A7:AY".$fila);
$filaGrafica = $fila+2;
// definir origen de los valores
$values = new PHPExcel_Chart_DataSeriesValues('Number', 'Productos!$D$7:$D$'.$fila);
// definir origen de los rotulos
$categories = new PHPExcel_Chart_DataSeriesValues('String', 'Productos!$B$7:$B$'.$fila);
// definir gráfico
$series = new PHPExcel_Chart_DataSeries(
PHPExcel_Chart_DataSeries::TYPE_BARCHART, // tipo de gráfico
PHPExcel_Chart_DataSeries::GROUPING_CLUSTERED,
array(0),
array(),
array($categories), // rótulos das columnas
array($values) // valores
);
$series->setPlotDirection(PHPExcel_Chart_DataSeries::DIRECTION_COL);
// inicializar gráfico
$layout = new PHPExcel_Chart_Layout();
$plotarea = new PHPExcel_Chart_PlotArea($layout, array($series));
// inicializar o gráfico
$chart = new PHPExcel_Chart('exemplo', null, null, $plotarea);
// definir título do gráfico
$title = new PHPExcel_Chart_Title(null, $layout);
$title->setCaption('Gráfico PHPExcel Chart Class');
// definir posiciondo gráfico y título
$chart->setTopLeftPosition('B'.$filaGrafica);
$filaFinal = $filaGrafica + 10;
$chart->setBottomRightPosition('E'.$filaFinal);
$chart->setTitle($title);
// adicionar o gráfico à folha
$objPHPExcel->getActiveSheet()->addChart($chart);
$writer = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007');
// incluir gráfico
$writer->setIncludeCharts(TRUE);
header("Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet");
header('Content-Disposition: attachment;filename="Regsitro de egresados.xls"');
header('Cache-Control: max-age=0');
$writer->save('php://output');
?>
Votos: 0 - Respuestas: 2 - Vistas: 8 Compartir en: Google Facebook Twitter LinkedIn Link
Respuestas:
-
Fecha: 18-07-2018 04:40:30 buen dia gracias dios lo pude resolver con esto:
$mysqli-> set_charset ('utf8');
Devuelve TRUE en caso de éxito o FALSE en caso de error.
de todas formas gracias comunidad, muchas veces me han ayudado. Votos: 0 - Link respuesta -
Fecha: 18-07-2018 10:39:32 FRANCIS
Buenas tardes
PHPExcel, esta deprecado.
Hay una libreria, que lo estaria reemplazando y es muy parecida: PhpSpreadsheet
LINCK: Pagina Oficial
LINCK: PhpSpreadsheet - GitHub
Un saludo Votos: 1 - Link respuesta
Para participar activamente de la comunidad primero debes autenticarte, ingresa al sistema.Iniciar Sesión
