sid/manager/xlsx.php

69 lines
2.1 KiB
PHP

<?php
function xlsx_switch_lvl1($request, $answer){
//inclusion des classes de PHPExcel et des fichiers necessaires
require_once __ROOT__.DIRECTORY_SEPARATOR.join(DIRECTORY_SEPARATOR, array("src", "phpexcel", "Classes", "PHPExcel.php"));
require_once __ROOT__.DIRECTORY_SEPARATOR.join(DIRECTORY_SEPARATOR, array("src", "phpexcel", "Classes", "PHPExcel", "Writer", "Excel2007.php"));
//TABLE DE ROUTAGE DE LA FONCTION
switch ($request->level_1) {
//EXPORTATION DES LISTE D'ELEVE DE L'ANNEEE EN FORMAT EXCEL
case 'export_userlist_group':
//On crée une instance du fichier xls, ainsi que de la feuille active
$workbook = new PHPExcel();
$sheet = $workbook->getActiveSheet();
$writer = new PHPExcel_Writer_Excel2007($workbook);
//on prépare le tableau
$sheet->setCellValue('A1', 'IAE Etape');
$sheet->setCellValue('B1', 'Nom');
$sheet->setCellValue('C1', 'Prénom');
$sheet->setCellValue('D1', 'Identifiant');
$sheet->setCellValue('E1', 'Sexe');
$sheet->setCellValue('F1', 'Mail étudiant');
//on récupère l'ensemble des étudiants
$req = new stdClass();
$ans = new stdClass();
$req->level_1 = 'grouplistForYear';
$req->annee = $_SESSION['annee'];
groups_switch_level_1($req, $ans);
//Si l'execution s'est proprement effectuée
$index = 2;
if($ans->req == 'success') {
foreach ($ans->grouplist as $group) {
$groupeName = $group['nom'];
foreach ($group->userlist as $student) {
$sheet->setCellValue('A'.$index, $groupeName);
$sheet->setCellValue('B'.$index, $student['nom']);
$sheet->setCellValue('C'.$index, $student['prenom']);
$sheet->setCellValue('D'.$index, $student['identifiant']);
//$sheet->setCellValue('E'.$index, $student['sexe']);
$sheet->setCellValue('F'.$index, $student['mail']);
$index++;
}
}
}
//On lance le téléchargement du fichier
header('Content-type: application/vnd.ms-excel');
header('Content-Disposition: attachment; filename="file.xls"');
$writer->save('php://output');
}
break;
default:
# code...
break;
}
}
?>