public function add(Etudiant $ET) { $q = $this->_bd->prepare('INSERT INTO Etudiant SET id = :id, Promotion = :Promotion, ' . 'Nom = :Nom, Prenom = :Prenom, Login = :Login, ' . 'Mdp = :Mdp, description = :description'); $q->bindValue(':id', $ET->getId(), PDO::PARAM_INT); $q->bindValue(':Promotion', $ET->getPromotion()); $q->bindValue(':Nom', $ET->getNom()); $q->bindValue(':Prenom', $ET->getPrenom()); $q->bindValue(':Login', $ET->getLogin()); $q->bindValue(':Mdp', $ET->getMdp()); $q->bindValue(':description', $ET->getDescription()); }
/** * toHTML * @param String $type : type de réponse voulue de l'entreprise ("accepter" ou "refuser") * @return HTML */ public function toHTML($type) { $acceptPhrases = array("En attente", "Validé"); $acceptClass = array("attente", "valide"); $actionPhrase = array("accepter" => "Accepter", "refuser" => "Refuser"); $actionLien = array("accepter" => "accepterStage.php", "refuser" => "annulerStage.php"); $offre = OffreStage::createFromID($this->idOffre); $etudiant = Etudiant::createFromID($this->idEtu); $enseignant = Enseignant::createFromID($this->idEns); return <<<HTML <tr> <td><a href="../offres/offre.php?id={$this->idOffre}">{$offre->getIntitule()}</a></td> <td>{$etudiant->getNom()} {$etudiant->getPrenom()}</td> <td>{$enseignant->getNomPrenom()}</td> <td class="{$acceptClass[$this->acceptEnt]}">{$acceptPhrases[$this->acceptEnt]}</td> <td class="{$acceptClass[$this->acceptEns]}">{$acceptPhrases[$this->acceptEns]}</td> <td class="{$acceptClass[$this->acceptEtu]}">{$acceptPhrases[$this->acceptEtu]}</td> <td> <a href="{$actionLien[$type]}?idO={$this->idOffre}&idEtu={$this->idEtu}" >{$actionPhrase[$type]}</a></td> </tr> HTML; }
<th>Refuser</th> </tr> </thead> <tbody> HTML; $pdo = myPDO::getInstance(); $stmt = $pdo->prepare(<<<SQL SELECT * FROM CANDIDATURE WHERE idOffre = :idOffre AND refuse = 0 SQL ); $stmt->execute(array("idOffre" => $idOffre)); while (($ligne = $stmt->fetch()) !== false) { $etu = Etudiant::createFromID($ligne["idEtu"]); $html .= <<<HTML <tr> <td>{$etu->getNom()}</td> <td>{$etu->getPrenom()}</td> <td><a href="{$etu->getCheminCV()}">PDF</a></td> <td><a href="validerCandidature.php?idE={$etu->getId()}&idO={$idOffre}">Valider</a></td> <td><a href="refuserCandidature.php?idE={$etu->getId()}&idO={$idOffre}">Refuser</a></td> </tr> <tr class='descriptionOffre' style='display:none'> <td colspan='5'> <div style="display:table-cell;position:relative;" class="descO"> {$ligne["lettreMotiv"]} </div> </td> </tr>
// Initialize phpCAS phpCAS::client(CAS_VERSION_2_0, $cas_host, $cas_port, $cas_context, false); // no SSL validation for the CAS server phpCAS::setNoCasServerValidation(); // force CAS authentication if (phpCAS::forceAuthentication()) { /* Si l'utilsiateur a 3 chiffre dans sont login, c'est un étudiant, sinon c'est un enseignant. * Si c'est un ensignant on vérifi qu'il soit pas un administrateur. */ if (preg_match("/^[-a-z]{5}[0-9]{3}\$/", phpCAS::getUser()) && phpCAS::getUser() != "gando002" && phpCAS::getUser() != "laudy001") { if (($etudiant = Etudiant::createFromLogin(phpCAS::getUser())) != null) { //$etudiant->saveIntoSession(); } else { try { Etudiant::inscription(phpCAS::getUser()); $etudiant = Etudiant::createFromLogin(phpCAS::getUser()); //$etudiant->saveIntoSession(); } catch (Exception $e) { echo $e->getMessage(); } } } else { if (($admin = Administrateur::createFromLogin(phpCAS::getUser())) != null) { //$admin->saveIntoSession(); } else { if (($enseignant = Enseignant::createFromLogin(phpCAS::getUser())) != null) { //$enseignant->saveIntoSession(); } else { try { Enseignant::inscription(phpCAS::getUser()); $enseignant = Enseignant::createFromLogin(phpCAS::getUser());
/** * Traite un formulaire d'inscription * @param $_REQUEST $formulaire : les données du formulaire d'inscription * @return html : le message (erreur ou réussite) correspondant à l'état de l'inscription */ public function inscription($formulaire) { $res = ""; // chaine de caractère retournée if ($formulaire != null && isset($formulaire["typeInscription"])) { $type = $formulaire["typeInscription"]; if ($type == "etudiant") { /* * INSCRIPTION ETUDIANT */ // Vérification de l'existence et du remplissage des champs if (!isset($formulaire["nom"]) || empty($formulaire["nom"])) { $res .= "Le champ \"nom\" est obligatoire<br>"; } if (!isset($formulaire["prenom"]) || empty($formulaire["prenom"])) { $res .= "Le champ \"prenom\" est obligatoire<br>"; } if (!isset($formulaire["login"]) || empty($formulaire["login"])) { $res .= "Le champ \"login\" est obligatoire<br>"; } if (!isset($formulaire["email"]) || empty($formulaire["email"])) { $res .= "Le champ \"email\" est obligatoire<br>"; } if (!isset($formulaire["ville"]) || empty($formulaire["ville"])) { $res .= "Le champ \"ville\" est obligatoire<br>"; } if (!isset($formulaire["code_postal"]) || empty($formulaire["code_postal"])) { $res .= "Le champ \"code postal\" est obligatoire<br>"; } if (!isset($formulaire["num_rue"]) || empty($formulaire["num_rue"])) { $res .= "Le champ \"numero de la rue\" est obligatoire<br>"; } if (!isset($formulaire["nom_rue"]) || empty($formulaire["nom_rue"])) { $res .= "Le champ \"nom de la rue\" est obligatoire<br>"; } // Valeurs par défaut des champs facultatifs if (!isset($formulaire["compl_adr"])) { $complAdr = ""; } else { $complAdr = $formulaire["compl_adr"]; } // Vérifications de la validité des champs remplis if (!preg_match("/^[0-9]{5,5}\$/", $formulaire["code_postal"])) { $res .= "Le code postal entré n'est pas valide<br>"; } if (!filter_var($formulaire["email"], FILTER_VALIDATE_EMAIL)) { $res .= "L'adresse e-mail entree n'est pas valide<br>"; } // Vérification de la disponibilité de certains champs $nbLogin = count(array_filter(array_merge($this->listeEtudiants, $this->listeEnseignants, $this->listeEntreprises), function ($e) use($formulaire) { if ($e != null) { return $e->getLogin() == $formulaire["login"]; } else { return false; } })); if ($nbLogin > 0) { $res .= "Ce login est deja utilise.<br>"; } $nbEmail = count(array_filter(array_merge($this->listeEtudiants, $this->listeEnseignants, $this->listeEntreprises), function ($e) use($formulaire) { if ($e != null) { return $e->getEmail() == $formulaire["email"]; } else { return false; } })); if ($nbEmail > 0) { $res .= "Cette adresse e-mail est deja utilisee.<br>"; } // Si $res est toujours vide (aucune erreur), on ajoute dans la BD! if ($res == "") { Etudiant::nvEtudiant(htmlspecialchars($formulaire["login"]), htmlspecialchars($formulaire["nom"]), htmlspecialchars($formulaire["prenom"]), 'H', $formulaire["email"], htmlspecialchars($formulaire["ville"]), $formulaire["code_postal"], htmlspecialchars($formulaire["num_rue"]), htmlspecialchars($formulaire["nom_rue"]), $complAdr); $res = "Inscription réalisée."; } } else { if ($type == "entreprise") { /* * INSCRIPTION ENTREPRISE */ // Vérification de l'existence et du remplissage des champs if (!isset($formulaire["nom"]) || empty($formulaire["nom"])) { $res .= "Le champ \"nom\" est obligatoire<br>"; } if (!isset($formulaire["code"]) || empty($formulaire["code"])) { $res .= "Le champ \"SIRET\" est obligatoire<br>"; } if (!isset($formulaire["email"]) || empty($formulaire["email"])) { $res .= "Le champ \"email\" est obligatoire<br>"; } if (!isset($formulaire["login"]) || empty($formulaire["login"])) { $res .= "Le champ \"login\" est obligatoire<br>"; } if (!isset($formulaire["email"]) || empty($formulaire["email"])) { $res .= "Le champ \"email\" est obligatoire<br>"; } if (!isset($formulaire["ville"]) || empty($formulaire["ville"])) { $res .= "Le champ \"ville\" est obligatoire<br>"; } if (!isset($formulaire["code_postal"]) || empty($formulaire["code_postal"])) { $res .= "Le champ \"code postal\" est obligatoire<br>"; } if (!isset($formulaire["num_rue"]) || empty($formulaire["num_rue"])) { $res .= "Le champ \"numero de la rue\" est obligatoire<br>"; } if (!isset($formulaire["nom_rue"]) || empty($formulaire["nom_rue"])) { $res .= "Le champ \"nom de la rue\" est obligatoire<br>"; } // Valeurs par défaut des champs facultatifs if (!isset($formulaire["compl_adr"])) { $complAdr = ""; } else { $complAdr = $formulaire["compl_adr"]; } if (!isset($formulaire["site_web"])) { $siteWeb = ""; } else { $siteWeb = $formulaire["site_web"]; } // Vérifications de la validité des champs remplis if (!preg_match("/^[0-9]{5,5}\$/", $formulaire["code_postal"])) { $res .= "Le code postal entre n'est pas valide<br>"; } if (!filter_var($formulaire["email"], FILTER_VALIDATE_EMAIL)) { $res .= "L'adresse e-mail entree n'est pas valide<br>"; } // Vérification de la validité d'une URL // http://php.net/manual/en/function.preg-match.php#93824 $regex = "((https?|ftp)\\:\\/\\/)?"; // SCHEME $regex .= "([a-z0-9+!*(),;?&=\$_.-]+(\\:[a-z0-9+!*(),;?&=\$_.-]+)?@)?"; // User and Pass $regex .= "([a-z0-9-.]*)\\.([a-z]{2,4})"; // Host or IP $regex .= "(\\:[0-9]{2,5})?"; // Port $regex .= "(\\/([a-z0-9+\$_-]\\.?)+)*\\/?"; // Path $regex .= "(\\?[a-z+&\$_.-][a-z0-9;:@&%=+\\/\$_.-]*)?"; // GET Query $regex .= "(#[a-z_.-][a-z0-9+\$_.-]*)?"; // Anchor if ($siteWeb != "" && !preg_match("/^{$regex}\$/", $siteWeb)) { // on ne vérifie l'URL que si le case n'est pas vide $res .= "L'URL du site web n'est pas valide<br>"; } // Vérification de la disponibilité de certains champs $nbLogin = count(array_filter(array_merge($this->listeEtudiants, $this->listeEnseignants, $this->listeEntreprises), function ($e) use($formulaire) { if ($e != null) { return $e->getLogin() == $formulaire["login"]; } else { return false; } })); if ($nbLogin > 0) { $res .= "Ce login est deja utilise.<br>"; } $nbEmail = count(array_filter(array_merge($this->listeEtudiants, $this->listeEnseignants, $this->listeEntreprises), function ($e) use($formulaire) { if ($e != null) { return $e->getEmail() == $formulaire["email"]; } else { return false; } })); if ($nbEmail > 0) { $res .= "Cette adresse e-mail est deja utilisee.<br>"; } // Si $res est toujours vide (aucune erreur), on ajoute dans la BD! if ($res == "") { Entreprise::nvEntreprise(htmlspecialchars($formulaire["login"]), $formulaire["email"], htmlspecialchars($formulaire["nom"]), htmlspecialchars($formulaire["code"]), htmlspecialchars($formulaire["ville"]), $formulaire["code_postal"], htmlspecialchars($formulaire["num_rue"]), htmlspecialchars($formulaire["nom_rue"]), $complAdr, $siteWeb, htmlspecialchars($formulaire["description"])); $res = "Inscription realisee."; } } else { if ($type == "enseignant") { /* * INSCRIPTION ENSEIGNANT */ // Vérification de l'existence et du remplissage des champs if (!isset($formulaire["nom"]) || empty($formulaire["nom"])) { $res .= "Le champ \"nom\" est obligatoire<br>"; } if (!isset($formulaire["prenom"]) || empty($formulaire["prenom"])) { $res .= "Le champ \"prenom\" est obligatoire<br>"; } if (!isset($formulaire["login"]) || empty($formulaire["login"])) { $res .= "Le champ \"login\" est obligatoire<br>"; } if (!isset($formulaire["email"]) || empty($formulaire["email"])) { $res .= "Le champ \"email\" est obligatoire<br>"; } if (!isset($formulaire["ville"]) || empty($formulaire["ville"])) { $res .= "Le champ \"ville\" est obligatoire<br>"; } if (!isset($formulaire["code_postal"]) || empty($formulaire["code_postal"])) { $res .= "Le champ \"code postal\" est obligatoire<br>"; } if (!isset($formulaire["num_rue"]) || empty($formulaire["num_rue"])) { $res .= "Le champ \"numero de la rue\" est obligatoire<br>"; } if (!isset($formulaire["nom_rue"]) || empty($formulaire["nom_rue"])) { $res .= "Le champ \"nom de la rue\" est obligatoire<br>"; } // Valeurs par défaut des champs facultatifs if (!isset($formulaire["compl_adr"])) { $complAdr = ""; } else { $complAdr = $formulaire["compl_adr"]; } if (!isset($formulaire["domaine"])) { $domaine = ""; } else { $domaine = $formulaire["domaine"]; } // Vérifications de la validité des champs remplis if (!preg_match("/^[0-9]{5,5}\$/", $formulaire["code_postal"])) { $res .= "Le code postal entre n'est pas valide<br>"; } if (!filter_var($formulaire["email"], FILTER_VALIDATE_EMAIL)) { $res .= "L'adresse e-mail entree n'est pas valide<br>"; } // Vérification de la disponibilité de certains champs $nbLogin = count(array_filter(array_merge($this->listeEtudiants, $this->listeEnseignants, $this->listeEntreprises), function ($e) use($formulaire) { if ($e != null) { return $e->getLogin() == $formulaire["login"]; } else { return false; } })); if ($nbLogin > 0) { $res .= "Ce login est deja utilise.<br>"; } $nbEmail = count(array_filter(array_merge($this->listeEtudiants, $this->listeEnseignants, $this->listeEntreprises), function ($e) use($formulaire) { if ($e != null) { return $e->getEmail() == $formulaire["email"]; } else { return false; } })); if ($nbEmail > 0) { $res .= "Cette adresse e-mail est deja utilisee.<br>"; } // Si $res est toujours vide (aucune erreur), on ajoute dans la BD! if ($res == "") { Enseignant::nvEnseignant(htmlspecialchars($formulaire["login"]), htmlspecialchars($formulaire["nom"]), htmlspecialchars($formulaire["prenom"]), 'H', $formulaire["email"], htmlspecialchars($formulaire["ville"]), $formulaire["code_postal"], htmlspecialchars($formulaire["num_rue"]), htmlspecialchars($formulaire["nom_rue"]), $complAdr, $domaine); $res = "Inscription réalisée."; } } else { $res = "Erreur dans le formulaire d'inscription"; } } } } else { $res = "Erreur dans le formulaire d'inscription"; } return $res; }
public function getTutorats() { // pb car affiche dans les 2 tableaux $html = <<<HTML <table> <thead> <tr> <th>Etudiant</th> <th>Entreprise</th> <th>Debut Stage</th> <th>Fin Stage</th> </tr> </thead> <tbody> HTML; foreach ($this->stagesTutores as $s) { $o = OffreStage::createFromID($s->getIdOffre()); $e = Etudiant::createFromID($s->getIdEtu()); $ent = Entreprise::createFromID($o->getEntrepriseId()); $html .= "<tr>"; $html .= "<td>" . $e->getNom() . "</td>"; $html .= "<td>" . $ent->getNomEntreprise() . "</td>"; $html .= "<td>" . $o->getDateDebut() . "</td>"; $html .= "<td>" . $o->getDateFin() . "</td>"; $html .= "</tr>"; $html .= "<tr class='descriptionOffre' style='display:none'><td colspan='4'>" . $o->getDescription() . "</td></tr>"; } $html .= "</tbody></table>"; return $html; }
<script> changerTitre("Modifier un étudiant"); </script> <?php $etudiant = $etudiantManager->getEtudiant($personne->getPerNum()); if (empty($_POST['dep_num'])) { include "include/pages/form/modifEtudiant.form.inc.php"; } else { $etudiant = new Etudiant(array('per_num' => $personne->getPerNum(), 'per_nom' => $_SESSION['per_nom'], 'per_prenom' => $_SESSION['per_prenom'], 'per_tel' => $_SESSION['per_tel'], 'per_mail' => $_SESSION['per_mail'], 'per_login' => $_SESSION['per_login'], 'dep_num' => $_POST['dep_num'], 'per_admin' => $personne->isPerAdmin(), 'div_num' => $_POST['div_num'])); if (!$personneManager->isEtudiant($etudiant->getPerNum())) { //cela veut dire que l'on a changé sa catégorie, et que c'était un salarie avant, donc on le drop et on ajoute un etudiant tout nouveau ! $salarieManager->deleteForChange($etudiant->getPerNum()); $retour = $etudiantManager->add($etudiant, 1); } else { // "simple" update $retour = $etudiantManager->update($etudiant); } include "include/pages/modifierPersonne.pwd.inc.php"; $prenom = $etudiant->getPerPrenom(); $modifFinie = true; //dans les deux cas, on va supprimer les variables de session if ($retour != 0) { // OK afficherMessageSucces("L'étudiant '{$prenom}' a été modifié !"); redirection(1, LISTER_PERSONNES); } else { afficherMessageErreur("L'étudiant '{$prenom}' n'a pas été modifié !"); redirection(10, LISTER_PERSONNES); } } //FIN ELSE ETUDIANT // FIN ETUDIANT
echo $seance . "</br>"; echo "Section(s) : </br>"; $section = new Section(1, "2A-S3", 1, 1); echo $section->getNo_section() . "</br>"; echo $section->getNom() . "</br>"; echo $section->getDate_debut() . "</br>"; echo $section->getDate_fin() . "</br>"; echo $section . "</br>"; echo "Sous-groupe(s) : </br>"; $Sous_groupe = new Sous_groupe(1, 1, 1); echo $Sous_groupe->getNo_section() . "</br>"; echo $Sous_groupe->getNo_groupe() . "</br>"; echo $Sous_groupe->getNo_sous_groupe() . "</br>"; echo $Sous_groupe . "</br>"; echo "Etudiant(s) : </br>"; $etudiant = new Etudiant(1, "Bresson", "Guillaume", 1, 0, 5, 1, 1); echo $etudiant->getNo_etudiant() . "</br>"; echo $etudiant->getNom() . "</br>"; echo $etudiant->getPrenom() . "</br>"; echo $etudiant->getBourse() . "</br>"; echo $etudiant->getAbandon() . "</br>"; echo $etudiant->getNo_section() . "</br>"; echo $etudiant->getNo_groupe() . "</br>"; echo $etudiant->getNo_sous_groupe() . "</br>"; echo $etudiant . "</br>"; echo "Absent(s) : </br>"; $absent = new Absent(1, 1, 3, "Cookies"); echo $absent->getNo_etudiant() . "</br>"; echo $absent->getNo_seance() . "</br>"; echo $absent->getAbsence() . "</br>"; echo $absent->getJustificatif() . "</br>";