Modification des repo et de la récupération de connection (PDO) + refactor 2 db

This commit is contained in:
xdrm-brackets 2015-11-10 09:17:41 +01:00
parent 4fbae9364f
commit e4bde4d031
11 changed files with 78 additions and 73 deletions

View File

@ -9,6 +9,8 @@ require_once __ROOT__.'/manager/repo/semestre.php';
// require_once __ROOT__.'/manager/repo/note.php';
debug();
class DBAccess{};
class DataBase{
/* ATTRIBUTS */
@ -17,7 +19,9 @@ class DataBase{
private $username;
private $password;
public $pdo;
private static $pdo;
private static $instance;
public function __construct($host, $dbname, $username, $password){
$this->host = $host;
@ -26,13 +30,22 @@ class DataBase{
$this->password = $password;
// password: Qt358nUdyeTxLDM8
$this->pdo = new PDO('mysql:host='.$host.';dbname='.$dbname, $username, $password);
DataBase::$pdo = new PDO('mysql:host='.$host.';dbname='.$dbname, $username, $password);
}
/* retourne une instance de la classe */
public static function getInstance(){
return new DataBase("localhost", "sid2", "root", "");
if( DataBase::$instance == null )
DataBase::$instance = new DataBase("localhost", "sid2", "php", "Qt358nUdyeTxLDM8");
return DataBase::$instance;
}
/* retourne la connection statique */
public static function getPDO(){
$instance = DataBase::getInstance();
return DataBase::$pdo;
}
@ -69,7 +82,7 @@ class DataBase{
/*** création d'un utilisateur dans la bdd ***/
/*********************************************/
public function creerUtilisateur($identifiant, $prenom, $nom, $mail, $mdp, $droits){
$getLastCount = $this->pdo->query('SELECT count(identifiant) as count FROM utilisateur');
$getLastCount = DataBase::getPDO()->query('SELECT count(identifiant) as count FROM utilisateur');
$lastCount = (int) $getLastCount->fetch()['count'];
// on applique une normalisation
@ -78,7 +91,7 @@ class DataBase{
$mail = strtolower($mail); // email en minuscules
$mdp = sha1($mdp); // on hash le password
$req = $this->pdo->prepare("INSERT INTO utilisateur(identifiant, prenom, nom, mail, mdp, droits) VALUES(:identifiant, :prenom, :nom, :mail, :mdp, :droits)");
$req = DataBase::getPDO()->prepare("INSERT INTO utilisateur(identifiant, prenom, nom, mail, mdp, droits) VALUES(:identifiant, :prenom, :nom, :mail, :mdp, :droits)");
$req->execute(array(
':identifiant' => $identifiant,
@ -89,7 +102,7 @@ class DataBase{
':droits' => $droits
));
$getNewCount = $this->pdo->query('SELECT count(identifiant) as count FROM utilisateur');
$getNewCount = DataBase::getPDO()->query('SELECT count(identifiant) as count FROM utilisateur');
$newCount = (int) $getNewCount->fetch()['count'];
if( $newCount > $lastCount ) // si on a bien ajouté un entrée
@ -108,7 +121,7 @@ class DataBase{
if( !($utilisateurUID=userRepo::UID($identifiant)) ) return 'unknown_user';
$getUtilisateurInfo = $this->pdo->prepare("SELECT identifiant, prenom, nom, mail, droits FROM utilisateur WHERE identifiant = :identifiant");
$getUtilisateurInfo = DataBase::getPDO()->prepare("SELECT identifiant, prenom, nom, mail, droits FROM utilisateur WHERE identifiant = :identifiant");
$getUtilisateurInfo->execute(array( ':identifiant' => $utilisateurUID ));
return $getUtilisateurInfo->fetch(); // retourne les info, si pas de résultat, retourne [FAUX]
@ -182,7 +195,7 @@ class DataBase{
// si le groupe existe => on récupère ses utilisateurs
$appartenance = $this->pdo->prepare("SELECT u.identifiant, u.prenom, u.nom, u.mail, u.droits, s.nom as semestre ".
$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 ".
@ -219,7 +232,7 @@ class DataBase{
// on cherche tout les groupes du même semestre de la même année
$getGroupesUID = $this->pdo->prepare("SELECT DISTINCT g.nom, s.rang, s.nom as semestre ".
$getGroupesUID = DataBase::getPDO()->prepare("SELECT DISTINCT g.nom, s.rang, 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 ".
@ -260,7 +273,7 @@ class DataBase{
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 = $this->pdo->prepare("SELECT id_semestre as id FROM semestre WHERE annee = :annee");
$checkAnnee = DataBase::getPDO()->prepare("SELECT id_semestre as id FROM semestre WHERE annee = :annee");
$checkAnnee->execute(array(
':annee' => $annee
));
@ -270,7 +283,7 @@ class DataBase{
return 'unknown_year';
// on cherche tout les groupes du même semestre de la même année
$getGroupesUID = $this->pdo->prepare("SELECT DISTINCT g.nom, s.rang, s.nom as semestre ".
$getGroupesUID = DataBase::getPDO()->prepare("SELECT DISTINCT g.nom, s.rang, 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 ".
@ -316,7 +329,7 @@ class DataBase{
/*** on cherche un semestre avec ce rang et cette année (qui est unique) ***/
$checkAnnee = $this->pdo->prepare("SELECT id_semestre as id FROM semestre WHERE annee = :annee");
$checkAnnee = DataBase::getPDO()->prepare("SELECT id_semestre as id FROM semestre WHERE annee = :annee");
$checkAnnee->execute(array(
':annee' => $annee
));
@ -331,7 +344,7 @@ class DataBase{
// on cherche tout les groupes du même semestre de la même année
$getGroupesUID = $this->pdo->prepare("SELECT DISTINCT s.nom as semestre, s.rang, g.nom as nom ".
$getGroupesUID = DataBase::getPDO()->prepare("SELECT DISTINCT s.nom as semestre, s.rang, g.nom as nom ".
"FROM module as m, utilisateur as u, utilisateur as eleve, groupe as g, enseignement as ens, mcc_ue, mcc_module as mcc_m, semestre as s, appartenance as app ".
"WHERE mcc_ue.id_semestre = s.id_semestre ".
"AND mcc_ue.id_mcc_ue = mcc_m.id_mcc_ue ".
@ -389,7 +402,7 @@ class DataBase{
// on cherche le groupe associé
$getNomGroupe = $this->pdo->prepare("SELECT g.nom ".
$getNomGroupe = DataBase::getPDO()->prepare("SELECT g.nom ".
"FROM utilisateur as u, groupe as g, appartenance as app ".
"WHERE app.id_etudiant = u.identifiant ".
"AND app.id_groupe = g.id_groupe ".
@ -420,7 +433,7 @@ class DataBase{
/*** on cherche le nouveau groupe pour cet utilisateur ***/
$getNouveauGroupeUID = $this->pdo->prepare("SELECT DISTINCT s.id_semestre as semestre, g.id_groupe as id, u.identifiant as etuUID ".
$getNouveauGroupeUID = DataBase::getPDO()->prepare("SELECT DISTINCT s.id_semestre as semestre, g.id_groupe as id, u.identifiant as etuUID ".
"FROM groupe as g, appartenance as app, appartenance as myapp, utilisateur as u, semestre as s ".
"WHERE g.nom = :groupe ".
"AND u.identifiant = :etudiant ".
@ -446,7 +459,7 @@ class DataBase{
/*** on cherche le groupe de cet utilisateur ***/
$getGroupeUID = $this->pdo->prepare("SELECT g.id_groupe as id ".
$getGroupeUID = DataBase::getPDO()->prepare("SELECT g.id_groupe as id ".
"FROM utilisateur as u, groupe as g, appartenance as app, semestre as s ".
"WHERE app.id_etudiant = u.identifiant ".
"AND app.id_groupe = g.id_groupe ".
@ -468,7 +481,7 @@ class DataBase{
/***************************************************************/
// il suffit donc maintenant de modifier l' "appartenance"
$updateGroupe = $this->pdo->prepare("UPDATE appartenance SET id_groupe = :nouveauGroupeUID ".
$updateGroupe = DataBase::getPDO()->prepare("UPDATE appartenance SET id_groupe = :nouveauGroupeUID ".
"WHERE id_etudiant = :etudiantUID ".
"AND id_groupe = :groupeUID ".
"AND id_semestre = :semestreUID");
@ -484,7 +497,7 @@ class DataBase{
/****************************************************/
/*** CAS 2 : l'utilisateur n'a pas encore de groupe */
/****************************************************/
$insertGroupe = $this->pdo->prepare("INSERT INTO appartenance(id_appartenance, id_etudiant, id_groupe, id_semestre) ".
$insertGroupe = DataBase::getPDO()->prepare("INSERT INTO appartenance(id_appartenance, id_etudiant, id_groupe, id_semestre) ".
"VALUES(NULL, :etudiantUID, :nouveauGroupeUID, :semestreUID)");
$insertGroupe->execute(array(
':etudiantUID' => $etudiantUID,
@ -494,7 +507,7 @@ class DataBase{
}
/* Vérification de l'entrée dans la table */
$verif = $this->pdo->prepare("SELECT count(id_appartenance) as count ".
$verif = DataBase::getPDO()->prepare("SELECT count(id_appartenance) as count ".
"FROM appartenance ".
"WHERE id_etudiant = :etudiantUID ".
"AND id_groupe = :nouveauGroupeUID ".
@ -547,7 +560,7 @@ class DataBase{
/*** on cherche le groupe de cet utilisateur ***/
$getGroupeUID = $this->pdo->prepare("SELECT g.id_groupe as id ".
$getGroupeUID = DataBase::getPDO()->prepare("SELECT g.id_groupe as id ".
"FROM utilisateur as u, groupe as g, appartenance as app, semestre as s ".
"WHERE app.id_etudiant = u.identifiant ".
"AND app.id_groupe = g.id_groupe ".
@ -571,7 +584,7 @@ class DataBase{
foreach($UEList as $iter=>$UE){
// si on a l'UID utilisateur & l'UID groupe => on récupère les modules
$getModuleList = $this->pdo->prepare("SELECT DISTINCT m.id_module as id, m.nom as nom, m.libelle as libelle ".
$getModuleList = DataBase::getPDO()->prepare("SELECT DISTINCT m.id_module as id, m.nom as nom, m.libelle as libelle ".
"FROM module as m, groupe as g, semestre as s, ue, appartenance as app, mcc_ue, mcc_module as mcc_m ".
"WHERE app.id_semestre = s.id_semestre ".
"AND app.id_groupe = g.id_groupe ".
@ -621,7 +634,7 @@ class DataBase{
/*** on cherche le groupe de cet utilisateur ***/
$getGroupeUID = $this->pdo->prepare("SELECT g.id_groupe as id ".
$getGroupeUID = DataBase::getPDO()->prepare("SELECT g.id_groupe as id ".
"FROM utilisateur as u, groupe as g, appartenance as app, semestre as s ".
"WHERE app.id_etudiant = u.identifiant ".
"AND app.id_groupe = g.id_groupe ".
@ -640,7 +653,7 @@ class DataBase{
return 'unknown_group';
// si on a l'UID utilisateur & l'UID groupe => on récupère les modules
$getModuleList = $this->pdo->prepare("SELECT DISTINCT m.id_module as id, m.nom as nom, m.libelle as libelle ".
$getModuleList = DataBase::getPDO()->prepare("SELECT DISTINCT m.id_module as id, m.nom as nom, m.libelle as libelle ".
"FROM module as m, groupe as g, semestre as s, ue, appartenance as app, mcc_ue, mcc_module as mcc_m ".
"WHERE app.id_semestre = s.id_semestre ".
"AND app.id_groupe = g.id_groupe ".
@ -687,7 +700,7 @@ class DataBase{
/*** on cherche le groupe de cet utilisateur ***/
$getGroupeUID = $this->pdo->prepare("SELECT g.id_groupe as id ".
$getGroupeUID = DataBase::getPDO()->prepare("SELECT g.id_groupe as id ".
"FROM utilisateur as u, groupe as g, appartenance as app, semestre as s ".
"WHERE app.id_etudiant = u.identifiant ".
"AND app.id_groupe = g.id_groupe ".
@ -707,7 +720,7 @@ class DataBase{
return 'unknown_group';
// si on a l'UID utilisateur & l'UID groupe => on récupère les modules
$getUEList = $this->pdo->prepare("SELECT DISTINCT ue.id_ue as id, s.annee as annee, ue.nom as nom, ue.libelle as libelle ".
$getUEList = DataBase::getPDO()->prepare("SELECT DISTINCT ue.id_ue as id, s.annee as annee, ue.nom as nom, ue.libelle as libelle ".
"FROM module as m, groupe as g, semestre as s, ue, appartenance as app, mcc_ue, mcc_module as mcc_m ".
"WHERE app.id_semestre = s.id_semestre ".
"AND app.id_groupe = g.id_groupe ".
@ -753,7 +766,7 @@ class DataBase{
/**************************************************/
public function getModulesByUEByEnseignant($enseignant, $annee){
/*** on cherche un semestre avec ce rang et cette année (qui est unique) ***/
$getSemestreUID = $this->pdo->prepare("SELECT id_semestre as id FROM semestre WHERE annee = :annee");
$getSemestreUID = DataBase::getPDO()->prepare("SELECT id_semestre as id FROM semestre WHERE annee = :annee");
$getSemestreUID->execute(array(
':annee' => $annee
));
@ -764,7 +777,7 @@ class DataBase{
/*** on cherche un utilisateur avec cet identifiant ***/
$getEnseignantUID = $this->pdo->prepare("SELECT DISTINCT u.identifiant as id ".
$getEnseignantUID = DataBase::getPDO()->prepare("SELECT DISTINCT u.identifiant as id ".
"FROM utilisateur as u, enseignement as ens, semestre as s, mcc_module as mcc_m, mcc_ue ".
"WHERE u.identifiant = ens.id_enseignant ".
"AND ens.id_mcc_module = mcc_m.id_mcc_module ".
@ -790,7 +803,7 @@ class DataBase{
foreach($UEList as $iter=>$UE){
// si on a l'UID utilisateur & l'UID groupe => on récupère les modules
$getModuleList = $this->pdo->prepare("SELECT DISTINCT m.id_module as id, m.nom as nom, m.libelle as libelle ".
$getModuleList = DataBase::getPDO()->prepare("SELECT DISTINCT m.id_module as id, m.nom as nom, m.libelle as libelle ".
"FROM enseignement as ens, semestre as s, ue, module as m, mcc_ue, mcc_module as mcc_m ".
"WHERE ens.id_mcc_module = mcc_m.id_mcc_module ".
"AND mcc_m.id_module = m.id_module ".
@ -827,7 +840,7 @@ class DataBase{
/****************************************/
public function getUEsEnseignant($enseignant, $annee){
/*** on cherche un semestre avec ce rang et cette année (qui est unique) ***/
$getSemestreUID = $this->pdo->prepare("SELECT id_semestre as id FROM semestre WHERE annee = :annee");
$getSemestreUID = DataBase::getPDO()->prepare("SELECT id_semestre as id FROM semestre WHERE annee = :annee");
$getSemestreUID->execute(array(
':annee' => $annee
));
@ -839,7 +852,7 @@ class DataBase{
/*** on cherche un utilisateur avec cet identifiant ***/
$getEnseignantUID = $this->pdo->prepare("SELECT DISTINCT u.identifiant as id ".
$getEnseignantUID = DataBase::getPDO()->prepare("SELECT DISTINCT u.identifiant as id ".
"FROM utilisateur as u, enseignement as ens, semestre as s, mcc_module as mcc_m, mcc_ue ".
"WHERE u.identifiant = ens.id_enseignant ".
"AND ens.id_mcc_module = mcc_m.id_mcc_module ".
@ -861,7 +874,7 @@ class DataBase{
// si on a l'UID enseignant => on récupère les UEs
$getUEList = $this->pdo->prepare("SELECT DISTINCT ue.id_ue as id, s.annee as annee, ue.nom as nom, ue.libelle as libelle ".
$getUEList = DataBase::getPDO()->prepare("SELECT DISTINCT ue.id_ue as id, s.annee as annee, ue.nom as nom, ue.libelle as libelle ".
"FROM enseignement as ens, semestre as s, ue, mcc_ue, mcc_module as mcc_m ".
"WHERE ens.id_mcc_module = mcc_m.id_mcc_module ".
"AND mcc_m.id_mcc_ue = mcc_ue.id_mcc_ue ".
@ -921,7 +934,7 @@ class DataBase{
/*** on cherche un utilisateur avec cet identifiant ***/
$getEtudiantUID = $this->pdo->prepare("SELECT u.identifiant as id FROM utilisateur as u, appartenance as app ".
$getEtudiantUID = DataBase::getPDO()->prepare("SELECT u.identifiant as id FROM utilisateur as u, appartenance as app ".
"WHERE u.identifiant = app.id_etudiant ".
"AND u.identifiant = :etudiant ".
"AND app.id_semestre = :semestreUID");
@ -969,7 +982,7 @@ class DataBase{
/*** on cherche un utilisateur avec cet identifiant ***/
$getEtudiantUID = $this->pdo->prepare("SELECT u.identifiant as id FROM utilisateur as u, appartenance as app ".
$getEtudiantUID = DataBase::getPDO()->prepare("SELECT u.identifiant as id FROM utilisateur as u, appartenance as app ".
"WHERE u.identifiant = app.id_etudiant ".
"AND u.identifiant = :etudiant ".
"AND app.id_semestre = :semestreUID");
@ -1018,7 +1031,7 @@ class DataBase{
/*** on cherche un utilisateur avec cet identifiant ***/
$getEtudiantUID = $this->pdo->prepare("SELECT identifiant as id FROM utilisateur as u, appartenance as app ".
$getEtudiantUID = DataBase::getPDO()->prepare("SELECT identifiant as id FROM utilisateur as u, appartenance as app ".
"WHERE u.identifiant = app.id_etudiant ".
"AND u.identifiant = :etudiant ".
"AND app.id_semestre = :semestreUID");
@ -1036,7 +1049,7 @@ class DataBase{
/*** on cherche un module avec ce nom, en accord avec le semestre et l'étudiant ***/
$getModuleUID = $this->pdo->prepare("SELECT m.id_module as id FROM module as m, appartenance as app, ue, mcc_ue, mcc_module as mcc_m ".
$getModuleUID = DataBase::getPDO()->prepare("SELECT m.id_module as id FROM module as m, appartenance as app, ue, mcc_ue, mcc_module as mcc_m ".
"WHERE app.id_etudiant = :etudiantUID ".
"AND mcc_ue.id_ue = ue.id_ue ".
@ -1062,7 +1075,7 @@ class DataBase{
// si on a l'UID utilisateur & l'UID groupe => on récupère les modules
$getModuleList = $this->pdo->prepare("SELECT m.nom as module, m.libelle as modulelib, ctrl.intitule, note.valeur, ctrl.base, ctrl.coefficient ".
$getModuleList = DataBase::getPDO()->prepare("SELECT m.nom as module, m.libelle as modulelib, ctrl.intitule, note.valeur, ctrl.base, ctrl.coefficient ".
"FROM note, appartenance as app, semestre as s, module as m, mcc_ue, mcc_module as mcc_m, controle as ctrl ".
"WHERE note.id_appartenance = app.id_appartenance ".
"AND ctrl.id_controle = note.id_controle ".
@ -1110,7 +1123,7 @@ class DataBase{
/*** on cherche un utilisateur avec cet identifiant ***/
$getEtudiantUID = $this->pdo->prepare("SELECT identifiant as id FROM utilisateur as u, appartenance as app ".
$getEtudiantUID = DataBase::getPDO()->prepare("SELECT identifiant as id FROM utilisateur as u, appartenance as app ".
"WHERE u.identifiant = app.id_etudiant ".
"AND u.identifiant = :etudiant ".
"AND app.id_semestre = :semestreUID");
@ -1127,7 +1140,7 @@ class DataBase{
/*** on cherche un module avec ce nom, en accord avec le semestre et l'étudiant ***/
$getUEUID = $this->pdo->prepare("SELECT ue.id_ue as id ".
$getUEUID = DataBase::getPDO()->prepare("SELECT ue.id_ue as id ".
"FROM module as m, appartenance as app, ue, mcc_ue, mcc_module as mcc_m ".
"WHERE mcc_ue.id_ue = ue.id_ue ".
"AND mcc_ue.id_semestre = app.id_semestre ".
@ -1151,7 +1164,7 @@ class DataBase{
return 'unknown_UE';
// si on a l'UID utilisateur & l'UID UE => on récupère les notes
$getUEList = $this->pdo->prepare("SELECT m.nom as module, m.libelle as modulelib, ctrl.intitule, note.valeur, ctrl.base, ctrl.coefficient ".
$getUEList = DataBase::getPDO()->prepare("SELECT m.nom as module, m.libelle as modulelib, ctrl.intitule, note.valeur, ctrl.base, ctrl.coefficient ".
"FROM note, appartenance as app, semestre as s, module as m, ue, mcc_ue, mcc_module as mcc_m, controle as ctrl ".
"WHERE note.id_appartenance = app.id_appartenance ".
"AND ctrl.id_mcc_module = mcc_m.id_mcc_module ".

View File

@ -43,11 +43,13 @@ require_once __ROOT__.'/manager/database.php';
$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
$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
$anneeCheck = $semestreCheck && preg_match('/^[0-9]{4}$/i', $request->annee); // semestre (annee) bon format
// si c'est pas un admin et que l'année est définie manuellement (alors on met l'année courante)
if( !permission('admin') ) $request->annee = $_SESSION['annee'];
if( !permission('admin') ){
$request->annee = $_SESSION['annee'];
$request->semestre = $_SESSION['semestre'];
}
if( $anneeCheck ){ // si tout les paramètres sont bons
$UEList = DataBase::getInstance()->getModulesByUEByEtudiant($request->etudiant, $request->semestre, $request->annee);

22
manager/repo/group.php Normal file → Executable file
View File

@ -9,7 +9,7 @@
/* */
/********************************************************************/
class groupRepo{
class groupRepo extends DBAccess{
/* VERIFIE L'EXISTENCE D'UN GROUPE DANS LA BDD
*
* @nom<String> le nom du groupe recherché
@ -19,10 +19,10 @@ class groupRepo{
*
*/
public static function UID($nom){
$db = DataBase::getInstance();
$db = DataBase::getPDO();
/*** on cherche un groupe avec ce nom ***/
$getGroupeUID = $db->pdo->prepare("SELECT id_groupe as id FROM groupe WHERE nom = :nom");
$getGroupeUID = $db->prepare("SELECT id_groupe as id FROM groupe WHERE nom = :nom");
$getGroupeUID->execute(array(
':nom' => $nom
));
@ -43,10 +43,10 @@ class groupRepo{
*
*/
public static function appartenanceUID($etudiant, $groupe, $semestre){
$db = DataBase::getInstance();
$db = DataBase::getPDO();
/*** on cherche un groupe avec ce nom ***/
$getAppartenanceUID = $db->pdo->prepare("SELECT id_appartenance as id ".
$getAppartenanceUID = $db->prepare("SELECT id_appartenance as id ".
"FROM appartenance ".
"WHERE id_etudiant = :etudiant ".
"AND id_groupe = :groupe ".
@ -75,7 +75,7 @@ class groupRepo{
*
*/
public static function creer($nom){
$db = DataBase::getInstance();
$db = DataBase::getPDO();
/* [1] On vérifie l'existence d'un groupe avec ce nom
======================================================*/
@ -87,7 +87,7 @@ class groupRepo{
$nom = strtoupper($nom); // on met le nom en majuscules
// on créé et envoie la requête de création du groupe
$creerGroupe = $db->pdo->prepare("INSERT INTO groupe(id_groupe, nom) VALUES(default, :nom)");
$creerGroupe = $db->prepare("INSERT INTO groupe(id_groupe, nom) VALUES(default, :nom)");
$creerGroupe->execute(array(
':nom' => $nom
));
@ -109,11 +109,11 @@ class groupRepo{
*
*/
public static function ajouterMembre($etudiant, $groupe, $semestre){
$db = DataBase::getInstance();
$db = DataBase::getPDO();
/* [1] On vérifie si l'utilisateur appartient à un groupe pour ce semestre
===========================================================================*/
$dejaMembre = $db->pdo->prepare("SELECT id_appartenance as id ".
$dejaMembre = $db->prepare("SELECT id_appartenance as id ".
"FROM appartenance ".
"WHERE id_etudiant = :etudiant ".
"AND id_semestre = :semestre ");
@ -127,7 +127,7 @@ class groupRepo{
/* [2] On modifie l'appartenance
==============================*/
// création et exécution de la requête de modification de l'appartenance
$ajouterMembres = $db->pdo->prepare("UPDATE appartenance ".
$ajouterMembres = $db->prepare("UPDATE appartenance ".
"SET id_groupe = :groupe ".
"WHERE id_appartenance = :appartenanceUID");
$ajouterMembre->execute(array(
@ -140,7 +140,7 @@ class groupRepo{
/* [2] On créé l'appartenance
==============================*/
// création et exécution de la requête de création d'appartenance
$ajouterMembres = $db->pdo->prepare("INSERT INTO appartenance(id_etudiant, id_groupe, id_semestre) ".
$ajouterMembres = $db->prepare("INSERT INTO appartenance(id_etudiant, id_groupe, id_semestre) ".
"VALUES( ".
"(SELECT identifiant FROM utilisateur WHERE identifiant = :etudiant), ".
"(SELECT id_groupe FROM groupe WHERE id_groupe = :groupe), ".

6
manager/repo/semestre.php Normal file → Executable file
View File

@ -9,7 +9,7 @@
/* */
/**************************************************************************************/
class semestreRepo{
class semestreRepo extends DBAccess{
/* VERIFIE L'EXISTENCE D'UN GROUPE DANS LA BDD
*
* @rang<int> le rang du semestre dans le parcours (1<=>S1, 2<=>S2, ..)
@ -26,10 +26,10 @@ class semestreRepo{
return false; // aucun résultat possible
$db = DataBase::getInstance();
$db = DataBase::getPDO();
/*** on cherche un semestre avec ce rang et cette année (qui est forcément unique) ***/
$getSemestreUID = $db->pdo->prepare("SELECT id_semestre as id FROM semestre WHERE rang = :rang AND annee = :annee");
$getSemestreUID = $db->prepare("SELECT id_semestre as id FROM semestre WHERE rang = :rang AND annee = :annee");
$getSemestreUID->execute(array(
':rang' => $rang,
':annee' => $annee

6
manager/repo/user.php Normal file → Executable file
View File

@ -9,7 +9,7 @@
/* */
/**************************************************************/
class userRepo{
class userRepo extends DBAccess{
/* VERIFIE L'EXISTENCE D'UN UTILISATEUR DANS LA BDD
*
* @identifiant<String> l'identifiant de l'utilisateur recherché
@ -19,10 +19,10 @@ class userRepo{
*
*/
public static function UID($identifiant){
$db = DataBase::getInstance();
$db = DataBase::getPDO();
/*** on cherche un utilisateur avec cet identifiant ***/
$getUtilisateurUID = $db->pdo->prepare("SELECT identifiant as id FROM utilisateur WHERE identifiant = :identifiant");
$getUtilisateurUID = $db->prepare("SELECT identifiant as id FROM utilisateur WHERE identifiant = :identifiant");
$getUtilisateurUID->execute(array(
':identifiant' => $identifiant
));

View File

@ -176,7 +176,7 @@ require_once __ROOT__.'/manager/database.php';
$_SESSION['semestre_pair'] = semestrePair(time());
/* TEMPORAIRE */
$_SESSION['semestre'] = 2;
$_SESSION['semestre'] = '2';
}else
return 'not_in_db';

View File

@ -116,7 +116,7 @@ if( permission('student') ){ // si connecté && utilisateur
*
*
*/
if( permission('teacher') || permission('admin') ){ // si connecté && prof ou admin
if( permission('teacher') ){ // si connecté && prof
echo "<section name='allgroups' title='tous les groupes' class='basic'>";
$request = new stdClass();
@ -525,8 +525,7 @@ if( permission('admin') ){ // si l'utilisateur est connecté et que c'est un él
/*********************************/
/*** IMPORTATION FICHIER EXCEL ***/
/*********************************/
if(permission('admin')){
if( permission('admin') ){
echo "<section name='importexcel' title='Importation/Export' class='basic'>";
//inclusion des classes de PHPExcel

Binary file not shown.

View File

View File

@ -1,36 +1,29 @@
{
"eleve1": {
"permissions": ["student"],
"password" : "password"
},
"mrd1609a": {
"permissions": ["student"],
"password" : "password"
},
"eleve2": {
"permissions": ["student"],
"password" : "password"
},
"lbh1609a": {
"permissions": ["teacher"],
"password" : "password"
},
"prof2": {
"permissions": ["master"],
"password" : "password"
},
"admin": {
"permissions": ["admin"],
"password" : "password"
},
"admin2": {
"permissions": ["admin"],
"password" : "password"
}

View File

@ -1,9 +1,7 @@
<?php define('__ROOT__', dirname(__FILE__) );
require_once __ROOT__.'/manager/security.php';
$timestamp = time();
var_dump( Date('m', $timestamp)<8 );
phpinfo();
/***************/
/*** A FAIRE ***/