/**
  * Tests if the information given by the user before creating a new user in the database is correct.
  **/
 public function controlInscription()
 {
     $accountView = new AccountView();
     if (empty($_POST['lastname']) || empty($_POST['firstname'])) {
         $accountView->showMessage("Veuillez renseigner tous les champs.");
         exit;
     }
     if (!empty($_POST['mail'])) {
         $accountModel = new AccountModel();
         $_POST["mail"] = htmlspecialchars($_POST["mail"]);
         $_POST["passe"] = htmlspecialchars($_POST["passe"]);
         $_POST["passe2"] = htmlspecialchars($_POST["passe2"]);
         if ($_POST["passe"] != $_POST["passe2"]) {
             $accountView->showMessage("Mot de passe non identique");
         } else {
             if (empty($_POST["passe"]) && empty($_POST["passe2"])) {
                 $accountView->showMessage("Veuillez renseigner les deux champs mot de passe");
             } else {
                 if ($userR = $accountModel->getUserEmail($_POST['mail'])) {
                     $accountView->showMessage("Adresse email existe déjà.");
                 } else {
                     if (preg_match('#[ÁÂÄàáâä@ÈÉÊËèéêë€ÌÍÎÏìíîïÒÓÔÖòóôöÙÚÛÜùúûüµŒœ]#', $_POST["firstname"]) != 0) {
                         $accountView->showMessage("Les caractères spéciaux sont interdits");
                     } else {
                         if (preg_match('#[ÁÂÄàáâä@ÈÉÊËèéêë€ÌÍÎÏìíîïÒÓÔÖòóôöÙÚÛÜùúûüµŒœ]#', $_POST["lastname"]) != 0) {
                             $accountView->showMessage("Les caractères spéciaux sont interdits");
                         } else {
                             //$_POST["passe"] = sha1($_POST["passe"]);
                             $userId = $accountModel->addUser($_POST["mail"], $_POST["firstname"], $_POST["lastname"], sha1($_POST["passe"]));
                             $_SESSION['infoUser'] = $accountModel->getUserById(intval($userId['user_id']));
                             $studentResult = $accountModel->getDataStudent('*', $_SESSION['infoUser']['user_id']);
                             $_SESSION['infoStudent'] = $studentResult;
                             $trainingResult = $accountModel->getTrainingInformationsForUser('*', $_SESSION['infoUser']['user_id']);
                             $_SESSION['infoTraining'] = $trainingResult;
                             $accountModel->sendEmail($_POST["mail"], $_POST["passe"]);
                         }
                     }
                 }
             }
         }
     } else {
         $accountView->showMessage("Veuillez remplir le champs adresse email.");
     }
 }
示例#2
0
 /**
  * Sends an e-mail to the user mail address
  * @param $userMail string containing the user mail address
  */
 public function sendEmail($userMail)
 {
     $accountView = new AccountView();
     $body = "\n               <p>Bienvenue !! vous êtes inscrit sur la page Zenetude.</p>\n               <p> Votre identifiant : " . $_POST['mail'] . "</p>\n               <p>Accédez au site : <a href='http://zenetude.esy.es'>Zenetude</a></p>\n               <hr/>\n               <p>Ce message a été généré automatiquement. Merci de ne pas y répondre.</p>\n           ";
     $mailer = new PHPMailer();
     $mailer->CharSet = "utf-8";
     $mailer->IsHTML(true);
     $mailer->From = "*****@*****.**";
     $mailer->FromName = "Noreply - Zenetude";
     // Définition du sujet/objet
     $mailer->Subject = "Zenetude - Inscription";
     $mailer->AddAddress($userMail);
     //$mailer->Subject =/*"Subject: =?UTF-8?B?".*/base64_encode("Inscription au site Zenetude");
     $mailer->Body = $body;
     if (!$mailer->Send()) {
         $accountView->showMessage("Erreur d'envoie du mail de récapitulation ! Mais l'inscription a réussie.");
     } else {
         $accountView->showMessage("Inscription terminée.", "ok", "index.php");
     }
 }