Envio de Datos por Formulario y descarga de Archivo de PHPExcel
Publicado por francisco (45 intervenciones) el 10/11/2017 22:56:54
hola espero que esten de lo mejor... vengo hasta ustedes para ver si me pueden ayudar con el siguiente problema... tengo mi formulario que recive datos automaticamente de una tabla de datos segun la linea de la tabla son los datos que se ponen en mi formuladio como si fuera a modificarlos... pero esos datos necesito mandarlos a un archivo phpexcel para que la informacion se coloque en celdas especificas en forma de reporte no una tabla normal dejo mi codigo y espeor me puedan ayudar muchas gracias.
mi PHPExcel:
tambien intente hacer una consulta con where asiganandole la variable de mi post y la variable de mi consulta ponerla en setCelValue(); pero no me funciono tampoco ... gracias
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
<form class="formDesc" action="archivoDesc.php" method="post">
<input type="text" hidden="" id="idpersona" name="">
<label>Factura:</label>
<input class="form-control" type="text" id="facturaIn" name="facturaIn" placeholder="Numero de Factura">
<label>Fecha Factura: </label>
<input class="form-control" type="date" id="fechaF" placeholder="Fecha de Factura" name="fechaF" >
<label>Direccion: </label>
<input class="form-control" type="text" id="direccion" name="direccion"placeholder="Direccion a donde se Dirige">
<label> AWB:</label>
<input class="form-control" type="text" id="AWB" placeholder="Numero de TrackID" name="AWB">
<label>Carrier: </label>
<input class="form-control" type="text" id="carrier" placeholder="Tipo de Carrier" name="carrier">
<label>Orden: </label>
<input class="form-control" type="text" id="orden" placeholder="Num de Orden" name="orden">
<label>Descripcion: </label>
<input class="form-control" type="text" id="descripcion" placeholder="Descripcion del Material" name="descripcion">
<label>#Parte: </label>
<input class="form-control" type="text" id="parte" placeholder="Numnero de Parte" name="parte">
</div>
<div class="col-xs-12 col-sm-6">
<label>Cantidad: </label>
<input class="form-control" type="text" id="cantidad" placeholder="Cantidad" name="cantidad" >
<label>Precio unit: </label>
<input class="form-control" type="text" id="precio" placeholder="Precio Unitario" name="precio">
<label>V. Factura: </label>
<input class="form-control" type="text" id="vfact" placeholder="Valor de Factura" name="vfact">
<label>Peso Neto:</label>
<input class="form-control" type="text" id="peso" placeholder="Peso Neto" name="peso">
<label>Nivel de servicio:
<select class="form-control input-sm" id="nivel" name="nivel"
<option value=""></option>
<option value="zz">ZZ</option>
<option value="o6">6</option>
</select>
</label>
<label>Destino:
<select class="form-control input-sm" id="compaDes" name="compaDes">
<option value=""></option>
<option value="PHL">ISH-PHL</option>
<option value="SFO">ISH-SFO</option>
<option value="IAD">IAD22</option>
<option value="SYD">SYD51</option>
<option value="CMH">CMH52</option>
<option value="GRU">GRU50</option>
<option value="YUL">YUL51</option>
</select>
</label>
<label>Para:
<select class="form-control input-sm" id="aduana" name="aduana">
<option value=""></option>
<option value="Fedex">Elizabeth Montiel</option>
<option value="Adualink">Eduardo de la Peña</option>
</select>
</label>
<label>Compañia Transportista :
<select class="form-control input-sm" id="compTrans" name="compTrans">
<option value=""></option>
<option value="Fedex">Fedex</option>
<option value="Adualink">Adualink</option>
</select>
</label>
<label>Des Español :
<select class="form-control input-sm" id="dscrip" name="dscrip">
<option value=""></option>
<option value="MEMORIA">UNIDAD DE MEMORIA (DISCO DURO)</option>
<option value="UNIDAD">UNIDAD DE PROCESAMIENTO DIGITAL</option>
</select>
</label>
</div>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
<button type="submit" class="btn btn-primary" id="descargar" name="descargar" data-dismiss="modal">Aceptar</button>
</form>
mi PHPExcel:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
// Metodo post para llamar la informacion del formulario
$facturaIn=$_POST['facturaIn'];
$fechaF=$_POST['fechaF'];
$direccion=$_POST['direccion'];
$AWB=$_POST['AWB'];
$carrier=$_POST['carrier'];
$orden=$_POST['orden'];
$descripcion=$_POST['descripcion'];
$parte=$_POST['parte'];
$cantidad=$_POST['cantidad'];
$precio=$_POST['precio'];
$vfact=$_POST['vfact'];
$peso=$_POST['peso'];
$nivel=$_POST['nivel'];
$compaDes=$_POST['compaDes'];
$aduana=$_POST['aduana'];
$compTrans=$_POST['compTrans'];
$dscrip=$_POST['dscrip'];
// conexion base de datos
$servidor="localhost";
$usuario="root";
$password="";
$bd="pruebas";
$conexion=mysqli_connect($servidor,$usuario,$password,$bd);
// query a la base de datos
$consulta = "SELECT * FROM t_persona";
$resultado = $conexion->query($consulta);
// Incluir la libreria PHPExcel
require_once 'Classes/PHPExcel.php';
// Crea un nuevo objeto PHPExcel
$objPHPExcel = new PHPExcel();
// Establecer propiedades
$objPHPExcel->getProperties()
->setCreator("Francisco Gutierrez")
->setLastModifiedBy("La bodeguita SA")
->setTitle("Cartas de Instruccion")
->setSubject("Cartas de Instruccion")
->setDescription("Cartas para Exportacion de Material Electrinico")
->setKeywords("Excel Office 2007 openxml")
->setCategory("Pruebas de Excel");
//titulos del reporte y datos donde va cada informacion
$objPHPExcel->setActiveSheetIndex(0)
->setCellValue('F2', 'PROYECTO DIRECT SHIP')
->setCellValue('D3', 'PCE PARAGON SOLUTIONS (MEXICO) S.A. DE C.V.')
->setCellValue('F4', 'Camino al Castillo No.2100 M El Salto, Jalisco 45680')
->setCellValue('A5', 'Datos Agente Aduanal:')
->setCellValue('D5', 'Destino:')
->setCellValue('A6', 'Fecha Factura:')
->setCellValue('A7', 'Para:')
->setCellValue('A8', 'Compania:')
->setCellValue('A9', 'TEL:')
->setCellValue('A10', 'Contacto')
->setCellValue('A11', 'CIA:')
->setCellValue('A12', 'TEL:')
->setCellValue('A15', 'Factura')
->setCellValue('B15', 'Orden')
->setCellValue('D15', 'Descripcion')
->setCellValue('F15', '#Parte')
->setCellValue('G15', 'Des_Espanol')
->setCellValue('I15', 'Cantidad')
->setCellValue('J15', 'Precio_unit')
->setCellValue('K15', 'V. Factura')
->setCellValue('L15', 'Fraccion')
->setCellValue('M15', 'Valor Agregado')
//datos del formulario
->setCellValue('B6',$fechaF['fechaF'])
->setCellValue('E7',$facturaIn['$facturaIn'])
->setCellValue('M6',$direccion=$_POST['direccion'])
->setCellValue('M8',$AWB=$_POST['AWB'])
->setCellValue('A16',$carrier=$_POST['carrier'])
->setCellValue('B16', $descripcion=$_POST['descripcion'])
->setCellValue('D16',$parte=$_POST['parte'])
->setCellValue('F16',$cantidad=$_POST['cantidad'])
->setCellValue('I16',$precio=$_POST['precio'])
->setCellValue('J16',$vfact=$_POST['vfact'])
->setCellValue('K16',$peso=$_POST['peso'])
->setCellValue('L54',$nivel=$_POST['nivel'].'Kg')
->setCellValue('L12',$compaDes=$_POST['compaDes'])
->setCellValue('E6',$aduana=$_POST['aduana'])
->setCellValue('B8',$compTrans=$_POST['compTrans'])
->setCellValue('B7',$dscrip=$_POST['dscrip']);
// Renombrar Hoja
$objPHPExcel->getActiveSheet()->setTitle('Facturas');
// Establecer la hoja activa, para que cuando se abra el documento se muestre primero.
$objPHPExcel->setActiveSheetIndex(0);
// Se modifican los encabezados del HTTP para indicar que se envia un archivo de Excel.
header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet');
header('Content-Disposition: attachment;filename="Factura.xlsx"');
header('Cache-Control: max-age=0');
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007');
$objWriter->save('php://output');
exit;
tambien intente hacer una consulta con where asiganandole la variable de mi post y la variable de mi consulta ponerla en setCelValue(); pero no me funciono tampoco ... gracias
Valora esta pregunta


0