Buenas, llevo mas de una semana intentando pasar la información de 2 columnas de una tabla de mi base de datos pero no hay manera, lo e probado de diversas maneras, pero nada... Ahora estoy probandolo con el PHPExcel, que e leido que es la mejor manera, pero no lo consigo, directamente con el PHPExcel no consigo que me guarde nada en el documento de excel (.xlsx) por lo tanto estoy haciendo algo mal. Lo que necesito es que coja la columna field_name y field_val de mi base de datos y ponga la columna field_val en la columna A del documento de excel, y la columna field_name de la base de datos en la columna B del documente de excel. Mi codigo es este:
Código PHP:
require_once 'Classes/PHPExcel.php';
require_once 'Classes/PHPExcel/IOFactory.php';
$objPHPExcel = new PHPExcel();
global $wpdb;
$query1 = $wpdb->get_results ( "
SELECT field_name, field_val
FROM wp_cformsdata
" );
$exec1 = mysql_query($query1) or die ("Error in Query1".mysql_error());
$tmparray =array("Nom","Valor");
$sheet =array($tmparray);
while ($res1 = mysql_fetch_array($exec1))
{
foreach($sheet as $row => $columns) {
foreach($columns as $column => $data) {
$worksheet->setCellValueByColumnAndRow($column, $row + 1, $data);
}
}
}
header('Content-type: application/vnd.ms-excel');
header('Content-Disposition: attachment; filename="name.xlsx"');
$worksheet = $objPHPExcel->getActiveSheet();
foreach($sheet as $row => $columns) {
foreach($columns as $column => $data) {
$worksheet->setCellValueByColumnAndRow($column, $row + 1, $data);
}
}
$objPHPExcel->getActiveSheet()->getStyle("A1:I1")->getFont()->setBold(true);
$objPHPExcel->setActiveSheetIndex(0);
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007');
$objWriter->save("name.xlsx");
Espero que me podais ayudar porque estoy desesperado ya y no se que hacer... Añadir que tengo las librerias puestas, y no se si es relevante pero trabajo con una pagina echa en wordpress
Gracias de antemano!