public function attribuerLicence(Membre $membre) { //plusieurs joueurs d'un même foyer $foyer = $membre->getFoyer(); //Récupération de l'année de naissance pour déterminer la catégorie d'age $date_explode = explode("/", $membre->getDateNaissance()); $annee = $date_explode[2]; switch ($annee) { case $annee >= 2005: $cat = "bp"; break; case 2001: $cat = "cm"; break; case 2002: $cat = "cm"; break; case 2003: $cat = "cm"; break; case 2004: $cat = "cm"; break; case $annee <= 2000: $cat = "jsv"; break; } //Type de licence $typeLicence = $membre->getTypeLicence(); //Basilien ou non-baisilien if (preg_match("/baisieux/i", $membre->getVille())) { $residence = "baisieux"; } else { $residence = "exterieur"; } //requete pour extraire l'id de la licence correspondante $bdd = $this->getBdd(); $req = $bdd->prepare('SELECT id as licenceId FROM licence WHERE foyer = :foyer AND age LIKE :age AND type = :type AND lieu = :lieu'); $req->bindValue('foyer', $foyer, PDO::PARAM_INT); $req->bindValue('age', '%' . $cat . '%', PDO::PARAM_STR); $req->bindValue('type', $typeLicence, PDO::PARAM_STR); $req->bindValue('lieu', $residence, PDO::PARAM_STR); $req->execute(); $donnees = $req->fetch(); $licence = $donnees['licenceId']; //attribution de l'id licence recupéré if ($membre->setLicenceId($licence)) { return TRUE; } else { return FALSE; } }