Export Excel: création d'onglets par demandeur
This commit is contained in:
parent
61c24500af
commit
689c430f7d
@ -79,7 +79,12 @@ $line = 1;
|
||||
// Build full row
|
||||
unset($fr);
|
||||
foreach($header as $key => $val) {
|
||||
$fr[$key] = $or[$key];
|
||||
if($key=='status') {
|
||||
$fr[$key] = $or[$key]==0 ? 'Finalisé' : 'Ouvert';
|
||||
}
|
||||
else {
|
||||
$fr[$key] = $or[$key];
|
||||
}
|
||||
}
|
||||
if($line==1) {
|
||||
$keys = array_keys ( $header );
|
||||
@ -103,13 +108,64 @@ $objPHPExcel->getActiveSheet()
|
||||
$line++;
|
||||
}
|
||||
|
||||
$mysqli->close();
|
||||
|
||||
|
||||
}
|
||||
$objPHPExcel->getActiveSheet()->getStyle('1')->getFont()->setBold(true);
|
||||
$objPHPExcel->getActiveSheet()->setTitle('Accréditations');
|
||||
$objPHPExcel->getActiveSheet()->setTitle('Toutes accréditations');
|
||||
|
||||
|
||||
// ------
|
||||
// Go again this time sorted by name so we can create a worksheet per requestor
|
||||
|
||||
$query = "SELECT * from submissions ORDER BY name";
|
||||
if ($result = $mysqli->query($query)) {
|
||||
|
||||
$line = 1;
|
||||
/* fetch associative array */
|
||||
while ($row = $result->fetch_assoc()) {
|
||||
$ser = $row['formdata'];
|
||||
$seru = unserialize($ser);
|
||||
$or = array_merge($row,$seru);
|
||||
// Build full row
|
||||
unset($fr);
|
||||
foreach($header as $key => $val) {
|
||||
$fr[$key] = $or[$key];
|
||||
}
|
||||
if($prevName!=$fr['name']) {
|
||||
$keys = array_keys ( $header );
|
||||
// Create new workshet
|
||||
$myWorkSheet = new PHPExcel_Worksheet($objPHPExcel, $fr['name']);
|
||||
$objPHPExcel->addSheet($myWorkSheet);
|
||||
$myWorkSheet
|
||||
->fromArray(
|
||||
$keys, // The data to set
|
||||
NULL, // Array values with this value will not be set
|
||||
'A1' // Top left coordinate of the worksheet range where
|
||||
// we want to set these values (default is A1)
|
||||
);
|
||||
$myWorkSheet->getStyle('1')->getFont()->setBold(true);
|
||||
$line=2;
|
||||
$prevName = $fr['name'];
|
||||
}
|
||||
|
||||
$myWorkSheet
|
||||
->fromArray(
|
||||
$fr, // The data to set
|
||||
NULL, // Array values with this value will not be set
|
||||
'A'.$line // Top left coordinate of the worksheet range where
|
||||
// we want to set these values (default is A1)
|
||||
);
|
||||
|
||||
$line++;
|
||||
}
|
||||
}
|
||||
|
||||
$mysqli->close();
|
||||
|
||||
|
||||
// -------
|
||||
$objWriter = new PHPExcel_Writer_Excel2007($objPHPExcel);
|
||||
// $objWriter->save(str_replace('.php', '.xlsx', __FILE__));
|
||||
$filename = 'accred_list.xlsx';
|
||||
$objWriter->save($filename);
|
||||
header('Content-Disposition: attachment; filename="' . $filename . '"');
|
||||
@ -120,7 +176,6 @@ header('Cache-Control: must-revalidate');
|
||||
header('Pragma: public');
|
||||
$objWriter->save('php://output');
|
||||
readfile($filename);
|
||||
|
||||
}
|
||||
|
||||
?>
|
||||
|
||||
BIN
accred_list.xlsx
BIN
accred_list.xlsx
Binary file not shown.
Loading…
x
Reference in New Issue
Block a user