Good by using phpexcel does not download the document, only rare symbols appear, I would greatly appreciate your help. Thanks in advance.
$conexion = new mysqli('','','','');
if (mysqli_connect_errno()) {
printf("La conexión con el servidor de base de datos falló: %s\n", mysqli_connect_error());
exit();
}
$fecha1=$_GET['dateIni'];
$fecha2=$_GET['dateFin'];
$est=$_GET['est'];
$col=$_GET['col'];
if($fecha2!='' and $fecha1!='' and $est!='todo' and $col!='nada'){
$consulta = "SELECT * FROM contratoscolaborador WHERE fecha>='$fecha1' AND fecha<='$fecha2' AND finalizado='$est' AND comercial='$col' ORDER BY fecha DESC";
$misContratos = $conexion->query($consulta);
ECHO "HOLAprimero";
$n = "valor1";
}elseif($fecha2!='' and $fecha1!='' and $est=='todo' and $col=='nada'){
$consulta = "SELECT * FROM contratoscolaborador WHERE fecha>='$fecha1' AND fecha<='$fecha2' ORDER BY fecha DESC";
$misContratos = $conexion->query($consulta);
ECHO "HOLAsegundo";
$n = "valor2";
}elseif($fecha2=='' and $fecha1=='' and $est!='todo' and $col=='nada'){
$consulta = "SELECT * FROM contratoscolaborador WHERE finalizado='$est' ORDER BY fecha DESC";
$misContratos = $conexion->query($consulta);
ECHO "HOLAtercero";
$n = "valor3";
}elseif($fecha1=='' and $fecha2=='' and $est=='todo' and $col!='nada'){
$consulta = "SELECT * FROM contratoscolaborador WHERE comercial='$col' ORDER BY fecha DESC";
$misContratos = $conexion->query($consulta);
ECHO "HOLAcuarto";
$n = "valor4";
}elseif($fecha1!='' and $fecha2!='' and $est!='todo' and $col=='nada'){
$consulta = "SELECT * FROM contratoscolaborador WHERE fecha>='$fecha1' AND fecha<='$fecha2' AND finalizado='$est' ORDER BY fecha DESC";
$misContratos = $conexion->query($consulta);
ECHO "HOLAquitno";
$n = "valor5";
}elseif($fecha1=='' and $fecha2=='' and $est!='todo' and $col!='nada'){
$consulta = "SELECT * FROM contratoscolaborador WHERE comercial='$col' AND finalizado='$est' ORDER BY fecha DESC";
$misContratos = $conexion->query($consulta);
ECHO "HOLAsexto";
$n = "valor6";
}elseif($fecha1!='' and $fecha2!='' and $est=='todo' and $col!='nada'){
$consulta = "SELECT * FROM contratoscolaborador WHERE comercial='$col' AND fecha>='$fecha1' AND fecha<='$fecha2' ORDER BY fecha DESC";
$misContratos = $conexion->query($consulta);
ECHO "HOLAultimo";
$n = "valor7";
}
echo $n;
if($misContratos->num_rows > 0 ){
if (PHP_SAPI == 'cli')
die('Este archivo solo se puede ver desde un navegador web');
/** Se agrega la libreria PHPExcel */
require_once 'lib/PHPExcel/PHPExcel.php';
// Se crea el objeto PHPExcel
$objPHPExcel = new PHPExcel();
// Se asignan las propiedades del libro
$objPHPExcel->getProperties()->setCreator("") //Autor
->setLastModifiedBy("") //Ultimo usuario que lo modificó
->setTitle("Datos del Contrato")
->setSubject("Cliente")
->setDescription("Excel con los datos del contrato del cliente seleccionado")
->setKeywords("reporte cliente contrato")
->setCategory("Reporte excel");
$tituloReporte = "Datos del cliente";
$titulosColumnas = array('COLABORADOR','TELEFONO COLABORADOR','COMERCIAL','NOMBRE','APELLIDOS','DNI','CODIGO POSTAL','DIRECCION','FECHA NACIMIENTO','PROVINCIA','POBLACION','TELEFONO CONTACTO','EMAIL','TIPO CONTRATO','TELEFONO FIJO','OPERADOR ACTUAL','OFERTA','LINEA 1 NUMERO','LINEA 2 NUMERO','LINEA 3 NUMERO','LINEA 4 NUMERO','LINEA 5 NUMERO');
// Se agregan los titulos del reporte
$objPHPExcel->setActiveSheetIndex(0)
->setCellValue('A1',$tituloReporte)
->setCellValue('A3', $titulosColumnas[0])
->setCellValue('B3', $titulosColumnas[1])
->setCellValue('C3', $titulosColumnas[2])
->setCellValue('D3', $titulosColumnas[3])
->setCellValue('E3', $titulosColumnas[4])
->setCellValue('F3', $titulosColumnas[5])
->setCellValue('G3', $titulosColumnas[6])
->setCellValue('H3', $titulosColumnas[7])
->setCellValue('I3', $titulosColumnas[8])
->setCellValue('J3', $titulosColumnas[9])
->setCellValue('K3', $titulosColumnas[10])
->setCellValue('L3', $titulosColumnas[11])
->setCellValue('M3', $titulosColumnas[12])
->setCellValue('N3', $titulosColumnas[13])
->setCellValue('O3', $titulosColumnas[14])
->setCellValue('P3', $titulosColumnas[15])
->setCellValue('Q3', $titulosColumnas[16])
->setCellValue('R3', $titulosColumnas[17])
->setCellValue('S3', $titulosColumnas[18])
->setCellValue('T3', $titulosColumnas[19])
->setCellValue('U3', $titulosColumnas[20])
->setCellValue('V3', $titulosColumnas[21]);
//Se agregan los datos de los alumnos
$i = 4;
while ($fila = $misContratos->fetch_array()) {
$nombre = $fila['nombre'].'_'.$fila['apellidos'];
$objPHPExcel->setActiveSheetIndex(0)
->setCellValue('A'.$i, $fila['colaborador'])
->setCellValue('B'.$i, $fila['telefonoColaborador'])
->setCellValue('C'.$i, $fila['comercial'])
->setCellValue('D'.$i, $fila['nombre'])
->setCellValue('E'.$i, $fila['apellidos'])
->setCellValue('F'.$i, $fila['dni'])
->setCellValue('G'.$i, $fila['cp'])
->setCellValue('H'.$i, $fila['direccion'])
->setCellValue('I'.$i, $fila['fechaNacimiento'])
->setCellValue('J'.$i, $fila['provincia'])
->setCellValue('K'.$i, $fila['poblacion'])
->setCellValue('L'.$i, $fila['telefonoContacto'])
->setCellValue('M'.$i, $fila['email'])
->setCellValue('N'.$i, $fila['tipoContrato'])
->setCellValue('O'.$i, $fila['telefonoFijo'])
->setCellValue('P'.$i, $fila['operadorActual'])
->setCellValue('Q'.$i, $fila['oferta'])
->setCellValue('R'.$i, $fila['linea1numero'])
->setCellValue('S'.$i, $fila['linea2numero'])
->setCellValue('T'.$i, $fila['linea3numero'])
->setCellValue('U'.$i, $fila['linea4numero'])
->setCellValue('V'.$i, $fila['linea5numero']);
$i++;
}
// Se asigna el nombre a la hoja
$objPHPExcel->getActiveSheet()->setTitle('Datos Cliente');
// Se activa la hoja para que sea la que se muestre cuando el archivo se abre
$objPHPExcel->setActiveSheetIndex(0);
// Inmovilizar paneles
//$objPHPExcel->getActiveSheet(0)->freezePane('A4');
$objPHPExcel->getActiveSheet(0)->freezePaneByColumnAndRow(0,83);
// Se manda el archivo al navegador web, con el nombre que se indica (Excel2007)
header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet');
header('Content-Disposition: attachment;filename="excel.xlsx"');
header('Cache-Control: max-age=0');
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007');
$objWriter->save('php://output');
exit;
}else{
print_r('No hay resultados para mostrar');
}
The connection does it correctly, the if of the queries enters correctly but when executing it it fills the screen with some rare symbols and does not download the document