From b985e2f0ae40883399d4d7772991181f8f9fd5fd Mon Sep 17 00:00:00 2001 From: xdrm-brackets Date: Thu, 12 Nov 2015 09:18:10 +0100 Subject: [PATCH] Rectification et factorisation des groupes (page, manager, database, repo) + commentaire phpexcell car fait bugger --- manager/career.php | 2 +- manager/database.php | 106 +++++++++++----------------- manager/groups.php | 4 +- manager/modules.php | 4 +- manager/repo/group.php | 34 +++++++++ manager/user.php | 4 +- page/_JS/groups.js | 4 +- page/groups.php | 152 ++++++++++++++++++++--------------------- 8 files changed, 158 insertions(+), 152 deletions(-) diff --git a/manager/career.php b/manager/career.php index fe21702..61290bf 100755 --- a/manager/career.php +++ b/manager/career.php @@ -41,7 +41,7 @@ require_once __ROOT__.'/manager/database.php'; $areSetParam = isset($request->etudiant) && isset($request->semestre) && isset($request->annee); // les arguments existent $typeOkParam = $areSetParam && is_string($request->etudiant) && is_string($request->semestre) && is_string($request->annee); // si c'est des strings $nEmptyParam = $typeOkParam && strlen($request->etudiant) > 0 && is_numeric($request->semestre) && is_numeric($request->annee); // des bon types - $etudiantCheck = $nEmptyParam && preg_match('/^[\w -]{6,100}$/i', $request->etudiant); // nom bon format + $etudiantCheck = $nEmptyParam && preg_match('/^[\w -]{3,50}$/i', $request->etudiant); // nom bon format $semestreCheck = $etudiantCheck && preg_match('/^[1-4]{1}$/i', $request->semestre); // semestre (semestre) bon format $anneeCheck = $semestreCheck && preg_match('/^[0-9]{4}$/i', $request->annee); // semestre (annee) bon format diff --git a/manager/database.php b/manager/database.php index 279d83c..dd310b8 100755 --- a/manager/database.php +++ b/manager/database.php @@ -176,26 +176,8 @@ class DataBase{ if( !($groupeUID=groupRepo::UID($groupe)) ) return 'unknown_group'; else $groupeUID = (int) $groupeUID; if( !($semestreUID=semestreRepo::UID($semestre, $annee)) ) return 'unknown_semestre'; else $semestreUID = (int) $semestreUID; - - - // si le groupe existe => on récupère ses utilisateurs - $appartenance = DataBase::getPDO()->prepare("SELECT u.identifiant, u.prenom, u.nom, u.mail, u.droits, s.nom as semestre ". - "FROM utilisateur as u, groupe as g, semestre as s, appartenance as app ". - "WHERE u.identifiant = app.id_etudiant ". - "AND g.id_groupe = app.id_groupe ". - "AND s.id_semestre = app.id_semestre ". // à virer (peut-être) - - "AND g.id_groupe = :groupeUID ". - "AND s.id_semestre = :semestreUID ". - "ORDER BY u.prenom, u.nom"); - $appartenance->execute(array( - ':groupeUID' => $groupeUID, - ':semestreUID' => $semestreUID - )); - - - // on fetch tous les utilisateurs & on supprime les doublons des entrées (indice numérique) - return DataBase::delNumeric( $appartenance->fetchAll() ); // on retourne le tout + // on retourne la liste des utilisateurs et on supprime les doublons à indices numériques + return DataBase::delNumeric( groupRepo::membres($groupeUID, $semestreUID) ); } @@ -219,20 +201,12 @@ class DataBase{ ':semestreUID' => $semestreUID )); - $grouplist = array(); // contiendra tout les groupes + $grouplist = $getGroupesUID->fetchAll(); // contiendra tout les groupes // on parcourt tous les groupes - while( $groupeUID = $getGroupesUID->fetch() ){ - - $groupe = new stdClass(); - $groupe->nom = $groupeUID['nom']; // attribut "nom" ajouté au groupe - $groupe->semestre = $groupeUID['semestre']; - - $groupe->userlist = groupRepo::membres($groupeUID['id'], $semestreUID); // on charge la liste des utilisateurs de ce groupe - - array_push($grouplist, $groupe); // on l'ajoute au résultat - } - + foreach($grouplist as $iter=>$val) + $grouplist[$iter]['userlist'] = groupRepo::membres($grouplist[$iter]['id'], $semestreUID); // on charge la liste des utilisateurs de ce groupe + return $grouplist; // sinon on retourne le tableau } @@ -240,56 +214,54 @@ class DataBase{ /******************************************************************/ /*** retourne la liste des utilisateurs des groupes d'une année ***/ /******************************************************************/ - public function listeEtudiantsTousGroupesAnnee($annee, $semestre_pair, $pSemestre, $pGroupe){ + public function listeEtudiantsTousGroupesAnnee($annee, $semestre_pair, $pSemestre=null, $pGroupe=null){ // pSemestre/pGroupe optionnels // définition des paramètres optionnels - $semestreDeb = 1; $semestreFin = 4; - if( $pSemestre != null ){ $semestreDeb = $pSemestre; $semestreFin = $pSemestre; } // semestre donné uniquement (si param non null) + $semestreOpt = '%'; + if( $pSemestre != null ){ $semestreOpt = $pSemestre; } // semestre donné uniquement (si param non null) $groupeOpt = '%'; - if( $pGroupe != null ){ $groupeOpt = $pGroupe; } // si le groupe est donné, on le définit + if( $pGroupe != null ){ $groupeOpt = $pGroupe; } // si le groupe est donné, on le définit /*** on cherche un semestre avec ce rang et cette année (qui est unique) ***/ $checkAnnee = DataBase::getPDO()->prepare("SELECT id_semestre as id FROM semestre WHERE annee = :annee"); - $checkAnnee->execute(array( - ':annee' => $annee - )); + $checkAnnee->execute(array( ':annee' => $annee )); + if( !( $checkAnnee->fetch()['id'] ) ) return 'unknown_year'; - // si on trouve pas, on retourne "unknown_year" - if( !( $checkAnnee->fetch()['id'] ) ) - return 'unknown_year'; - // on cherche tout les groupes du même semestre de la même année - $getGroupesUID = DataBase::getPDO()->prepare("SELECT DISTINCT g.id_groupe as id, g.nom, s.rang, s.id_semestre, s.nom as semestre ". - "FROM groupe as g, semestre as s, appartenance as app ". - "WHERE g.id_groupe = app.id_groupe ". - "AND s.id_semestre = app.id_semestre ". + // // on cherche tout les groupes des semestres courants de l'année + // $getGroupesUID = DataBase::getPDO()->prepare("SELECT DISTINCT g.id_groupe as id, g.nom, s.rang, s.id_semestre, s.nom as semestre ". + // "FROM groupe as g, semestre as s, appartenance as app ". + // "WHERE g.id_groupe = app.id_groupe ". + // "AND s.id_semestre = app.id_semestre ". - "AND g.nom LIKE '".$groupeOpt."' ". - "AND s.rang BETWEEN :semestreDeb AND :semestreFin ". - "AND s.rang % 2 = :semestre_pair ". - "AND s.annee = :annee ". - "ORDER BY g.nom"); - $getGroupesUID->execute(array( - ':semestreDeb' => $semestreDeb, - ':semestreFin' => $semestreFin, - ':semestre_pair' => ($semestre_pair) ? '0' : '1', - ':annee' => $annee - )); + // "AND g.nom LIKE '".$groupeOpt."' ". + // "AND s.nom LIKE '".$semestreOpt."' ". + // "AND s.rang % 2 = :semestre_pair ". + // "AND s.annee = :annee ". + // "ORDER BY g.nom"); + // $getGroupesUID->execute(array( + // ':semestre_pair' => ($semestre_pair) ? '0' : '1', + // ':annee' => $annee + // )); - $grouplist = array(); // contiendra tout les groupes + // $grouplist = array(); // contiendra tout les groupes - // on parcourt tous les groupes - while( $groupeUID = $getGroupesUID->fetch() ){ + $grouplist = DataBase::delNumeric( groupRepo::forYear($semestre_pair, $annee, $pSemestre, $pGroupe) ); - $groupe = new stdClass(); - $groupe->nom = $groupeUID['nom']; // attribut "nom" ajouté au groupe - $groupe->semestre = $groupeUID['semestre']; + foreach($grouplist as $iter=>$val) + $grouplist[$iter]['userlist'] = groupRepo::membres($grouplist[$iter]['id'], $grouplist[$iter]['id_semestre']); + // // on parcourt tous les groupes + // while( $groupeUID = $getGroupesUID->fetch() ){ - $groupe->userlist = groupRepo::membres($groupeUID['id'], $groupeUID['id_semestre']); // on charge la liste des utilisateurs de ce groupe + // $groupe = new stdClass(); + // $groupe->nom = $groupeUID['nom']; // attribut "nom" ajouté au groupe + // $groupe->semestre = $groupeUID['semestre']; - array_push($grouplist, $groupe); // on l'ajoute au résultat - } + // $groupe->userlist = groupRepo::membres($groupeUID['id'], $groupeUID['id_semestre']); // on charge la liste des utilisateurs de ce groupe + + // array_push($grouplist, $groupe); // on l'ajoute au résultat + // } return $grouplist; // sinon on retourne le tableau diff --git a/manager/groups.php b/manager/groups.php index e6ccb9e..458e1c0 100755 --- a/manager/groups.php +++ b/manager/groups.php @@ -169,7 +169,7 @@ require_once __ROOT__.'/manager/database.php'; $enseignantCheck = $anneeCheck && preg_match('/^[\w -]{3,50}$/i', $request->enseignant); // enseignant (annee) bon format // paramètres optionnels - $optionalSemestre = isset($request->semestre) && is_numeric($request->semestre) && preg_match('/^[1-4]{1}$/i', $request->semestre); + $optionalSemestre = isset($request->semestre) && is_string($request->semestre) && preg_match('/^S[0-9]{1}$/i', $request->semestre); $optionalGroupe = isset($request->groupe) && is_string($request->groupe) && strlen($request->groupe) > 1 && preg_match('/^[a-z0-9 -]{1,10}$/i', $request->groupe); // définition (ou pas) des paramètres optionnels @@ -207,7 +207,7 @@ require_once __ROOT__.'/manager/database.php'; // paramètres optionnels - $optionalSemestre = isset($request->semestre) && is_numeric($request->semestre) && preg_match('/^[1-4]{1}$/i', $request->semestre); + $optionalSemestre = isset($request->semestre) && is_string($request->semestre) && preg_match('/^S[0-9]{1}$/i', $request->semestre); $optionalGroupe = isset($request->groupe) && is_string($request->groupe) && strlen($request->groupe) > 1 && preg_match('/^[a-z0-9 -]{1,10}$/i', $request->groupe); // définition (ou pas) des paramètres optionnels diff --git a/manager/modules.php b/manager/modules.php index c063d25..1196e04 100755 --- a/manager/modules.php +++ b/manager/modules.php @@ -47,7 +47,7 @@ require_once __ROOT__.'/manager/database.php'; $areSetParam = isset($request->etudiant) && isset($request->semestre) && isset($request->annee); // les arguments existent $typeOkParam = $areSetParam && is_string($request->etudiant) && is_string($request->semestre) && is_string($request->annee); // si c'est des strings $nEmptyParam = $typeOkParam && strlen($request->etudiant) > 0 && is_numeric($request->semestre) && is_numeric($request->annee); // des bon types - $etudiantCheck = $nEmptyParam && preg_match('/^[\w -]{6,100}$/i', $request->etudiant); // nom bon format + $etudiantCheck = $nEmptyParam && preg_match('/^[\w -]{3,50}$/i', $request->etudiant); // nom bon format $semestreCheck = $etudiantCheck && preg_match('/^[1-4]{1}$/i', $request->semestre); // semestre (semestre) bon format $anneeCheck = $semestreCheck && preg_match('/^[0-9]{4}$/i', $request->annee); // semestre (annee) bon format @@ -78,7 +78,7 @@ require_once __ROOT__.'/manager/database.php'; $areSetParam = isset($request->enseignant)&& isset($request->annee); // les arguments existent $typeOkParam = $areSetParam && is_string($request->enseignant) && is_string($request->annee); // si c'est des strings $nEmptyParam = $typeOkParam && strlen($request->enseignant) > 0 && is_numeric($request->annee); // des bon types - $enseignantCheck = $nEmptyParam && preg_match('/^[\w -]{6,100}$/i', $request->enseignant); // nom bon format + $enseignantCheck = $nEmptyParam && preg_match('/^[\w -]{3,50}$/i', $request->enseignant); // nom bon format $anneeCheck = $enseignantCheck && preg_match('/^[0-9]{4}$/i', $request->annee); // semestre (annee) bon format if( $anneeCheck ){ // si tout les paramètres sont bons diff --git a/manager/repo/group.php b/manager/repo/group.php index f2a9e70..736babb 100755 --- a/manager/repo/group.php +++ b/manager/repo/group.php @@ -202,7 +202,41 @@ class groupRepo extends DBAccess{ + /* RETOURNE TOUS LES GROUPES DES SEMESTRES COURANT D'UNE ANNÉE + * + * @semestre_pair VRAI si le semestre courant est pair + * @annee L'année en cours + * + * @pSemestre ***OPTIONNEL*** le nom du semestre + * @pGroupe ***OPTIONNEL*** le nom du groupe + * + * + * @return groupes retourne la liste des groupes correspondant aux critères + * + */ + public static function forYear($semestre_pair, $annee, $pSemestre=null, $pGroupe=null){ + // si le semestre est donné, on cherche uniquement celui-ci, sinon on les affiche tous + $semestreOpt = '%'; + if( $pSemestre != null ){ $semestreOpt = $pSemestre; } + + // si le groupe est donné, on cherche uniquement celui-ci, sinon on les affiche tous + $groupeOpt = '%'; + if( $pGroupe != null ){ $groupeOpt = $pGroupe; } + $getGroupeList = DataBase::getPDO()->prepare("SELECT DISTINCT g.id_groupe as id, g.nom, s.rang, s.id_semestre, s.nom as semestre ". + "FROM groupe as g, semestre as s, appartenance as app ". + "WHERE g.id_groupe = app.id_groupe ". + "AND s.id_semestre = app.id_semestre ". + + "AND g.nom LIKE '".$groupeOpt."' ". + "AND s.nom LIKE '".$semestreOpt."' ". + "AND s.rang % 2 = :semestre_pair ". + "AND s.annee = :annee ". + "ORDER BY g.nom"); + $getGroupeList->execute(array( ':semestre_pair' => ($semestre_pair) ? '0' : '1', ':annee' => $annee )); + + return DataBase::delNumeric( $getGroupeList->fetchAll() ); + } } \ No newline at end of file diff --git a/manager/user.php b/manager/user.php index d4597a0..0654314 100755 --- a/manager/user.php +++ b/manager/user.php @@ -47,7 +47,7 @@ require_once __ROOT__.'/manager/database.php'; $typeOkParam = $areSetParam && is_string($request->identifiant) && is_string($request->mdp); // ils sont tous 2 des string $nEmptyParam = $typeOkParam && strlen($request->identifiant) > 0 && strlen($request->mdp) > 0; // d'au moins 1 caractère $identifiantCheck = $nEmptyParam && preg_match('/^[\w -]{3,50}$/i', $request->identifiant); // identifiant bon format - $mdpCheck = $identifiantCheck && preg_match('/^[\w -]{6,100}$/i', $request->mdp); // mdp bon format + $mdpCheck = $identifiantCheck && preg_match('/^[\w -]{4,100}$/i', $request->mdp); // mdp bon format if( $mdpCheck ) // si tout les params sont ok $answer->request = user_authentification($request->identifiant, $request->mdp); @@ -83,7 +83,7 @@ require_once __ROOT__.'/manager/database.php'; $prenomCheck = $identifiantCheck && preg_match('/^[a-z -]{3,50}$/i', $request->prenom); // prenom bon format $nomCheck = $prenomCheck && preg_match('/^[a-z -]{3,50}$/i', $request->nom); // nom bon format $mailCheck = $nomCheck && preg_match('/^[\w\.-]+@[\w\.-]+\.[a-z]{2,4}$/i', $request->mail); // mail bon format - $mdpCheck = $mailCheck && preg_match('/^[\w -]{6,100}$/i', $request->mdp); // mdp bon format + $mdpCheck = $mailCheck && preg_match('/^[\w -]{4,100}$/i', $request->mdp); // mdp bon format $droitsCheck = $mdpCheck && is_int(array_search($request->droits, ['student', 'teacher', 'master', 'admin'])); // droits bon format if( $droitsCheck ){ // si tout les paramètres sont bons diff --git a/page/_JS/groups.js b/page/_JS/groups.js index fd7f934..10a701d 100755 --- a/page/_JS/groups.js +++ b/page/_JS/groups.js @@ -87,10 +87,10 @@ var selectList = document.querySelectorAll("#CONTAINER > section[name] > select" // GESTION DE LA PRISE EN COMPTE DES SELECT // DOM.CONTAINER.addEventListener('change', function(e){ if( e.target.tagName == 'SELECT' && ['semestre', 'groupe'].indexOf(e.target.getAttribute('name')) > -1 ){ - if( e.target.getAttribute('name') == 'semestre' ){ // si modifie le semestre + if( e.target.getAttribute('name') == 'semestre' ){ // SI modifie le semestre pageM.vars[1] = e.target.value; // on selectionne semestre pageM.vars[2] = '*'; // on désactive le groupe - }else{ + }else{ // SINON pageM.vars[1] = '*'; // on désactive le semestre pageM.vars[2] = e.target.value; // on active le groupe } diff --git a/page/groups.php b/page/groups.php index 8203ac2..c1045f0 100755 --- a/page/groups.php +++ b/page/groups.php @@ -25,7 +25,7 @@ require_once __ROOT__.'/manager/groups.php'; /* GESTION SEMESTRE OPTIONNEL */ - if( isset($postVars[1]) && is_numeric($postVars[1]) ) + if( isset($postVars[1]) && preg_match('/^S[0-9]{1}$/', $postVars[1]) ) $semestreOpt = $postVars[1]; else $semestreOpt = null; @@ -71,7 +71,7 @@ if( permission('student') ){ // si connecté && utilisateur foreach($answer->grouplist as $group){ // pour chaque groupe - if( count($group->userlist) > 0 ){ // s'il y a des utilisateurs + if( count($group['userlist']) > 0 ){ // s'il y a des utilisateurs echo ""; @@ -79,13 +79,13 @@ if( permission('student') ){ // si connecté && utilisateur // pour chaque utilisateur - foreach($group->userlist as $user){ + foreach($group['userlist'] as $user){ echo ''; echo "'; echo ''; echo ''; - echo ''; - echo ''; + echo ''; + echo ''; echo ''; } @@ -137,13 +137,13 @@ if( permission('teacher') ){ // si connecté && prof echo ""; @@ -156,12 +156,12 @@ if( permission('teacher') ){ // si connecté && prof foreach($answer->grouplist as $group){ if( $lastGroupe == null || $lastGroupe != $group->nom ){ - if( $group->nom == $groupeOpt ) // si c'est le groupe séléctionné - echo "'; + if( $group['nom'] == $groupeOpt ) // si c'est le groupe séléctionné + echo "'; else - echo "'; + echo "'; - $lastGroupe = $group->nom; + $lastGroupe = $group['nom']; } } echo "
".$user['identifiant'].''.$user['prenom'].''.$user['nom'].''.$group->semestre.'Groupe '.$group->nom.''.$group['semestre'].'Groupe '.$group['nom'].'
"; @@ -185,13 +185,13 @@ if( permission('teacher') ){ // si connecté && prof // pour chaque utilisateur - foreach($group->userlist as $user){ + foreach($group['userlist'] as $user){ echo ''; echo "'; echo ''; echo ''; - echo ''; - echo ''; + echo ''; + echo ''; echo ''; } @@ -330,10 +330,10 @@ if( permission('teacher') ){ // si l'utilisateur est connecté et que c'est un foreach($answer->grouplist as $group){ if( $lastSemestre == null || $lastSemestre != $group->semestre ){ - if( $group->semestre[1] == $semestreOpt ) // si c'est le semestre séléctionné - echo "'; + if( $group->semestre == $semestreOpt ) // si c'est le semestre séléctionné + echo "'; else // sinon on affiche normalement - echo "'; + echo "'; $lastSemestre = $group->semestre; } @@ -437,14 +437,14 @@ if( permission('admin') ){ // si l'utilisateur est connecté et que c'est un adm echo ""; @@ -455,14 +455,14 @@ if( permission('admin') ){ // si l'utilisateur est connecté et que c'est un adm echo ""; @@ -473,14 +473,14 @@ if( permission('admin') ){ // si l'utilisateur est connecté et que c'est un adm foreach($answer->grouplist as $group){ // pour chaque groupe - if( count($group->userlist) > 0 ){ // s'il y a des utilisateurs + if( count($group['userlist']) > 0 ){ // s'il y a des utilisateurs echo "
".$user['identifiant'].''.$user['prenom'].''.$user['nom'].''.$group->semestre.'Groupe '.$group->nom.''.$group['semestre'].'Groupe '.$group['nom'].'
"; echo ''; echo ''; echo ''; echo ''; @@ -492,12 +492,12 @@ if( permission('admin') ){ // si l'utilisateur est connecté et que c'est un adm // pour chaque utilisateur - foreach($group->userlist as $user){ + foreach($group['userlist'] as $user){ echo ''; echo "'; echo ''; echo ''; - echo ''; + echo ''; echo ''; } @@ -523,53 +523,53 @@ if( permission('admin') ){ // si l'utilisateur est connecté et que c'est un adm /*********************************/ /*** IMPORTATION FICHIER EXCEL ***/ /*********************************/ -if( permission('admin') ){ - echo "
"; +// if( permission('admin') ){ +// echo "
"; - //inclusion des classes de PHPExcel - include __ROOT__.DIRECTORY_SEPARATOR.join(DIRECTORY_SEPARATOR, array("src", "phpexcel", "Classes", "PHPExcel.php")); - include __ROOT__.DIRECTORY_SEPARATOR.join(DIRECTORY_SEPARATOR, array("src", "phpexcel", "Classes", "PHPExcel", "Writer", "Excel2007.php")); +// //inclusion des classes de PHPExcel +// include __ROOT__.DIRECTORY_SEPARATOR.join(DIRECTORY_SEPARATOR, array("src", "phpexcel", "Classes", "PHPExcel.php")); +// include __ROOT__.DIRECTORY_SEPARATOR.join(DIRECTORY_SEPARATOR, array("src", "phpexcel", "Classes", "PHPExcel", "Writer", "Excel2007.php")); - //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 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 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 - $request = new stdClass(); - $answer = new stdClass(); +// //on récupère l'ensemble des étudiants +// $request = new stdClass(); +// $answer = new stdClass(); - $request->level_1 = 'grouplistForYear'; - $request->annee = $_SESSION['annee']; - groups_switch_level_1($request, $answer); +// $request->level_1 = 'grouplistForYear'; +// $request->annee = $_SESSION['annee']; +// groups_switch_level_1($request, $answer); - //Si l'execution s'est proprement effectuée - $index = 2; - if($answer->request == 'success') { - foreach ($answer->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++; - } - } - } +// //Si l'execution s'est proprement effectuée +// $index = 2; +// if($answer->request == 'success') { +// foreach ($answer->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 enregistre le fichier - $writer->save('test.xlsx'); -} +// //On enregistre le fichier +// $writer->save('test.xlsx'); +// } ?> \ No newline at end of file
'; - echo 'Groupe '.$group->nom.''; + echo 'Groupe '.$group['nom'].''; echo "(glisser-déposer étudiant pour le déplacer)"; echo '
".$user['identifiant'].''.$user['prenom'].''.$user['nom'].''.$group->nom.''.$group['nom'].'