Пример #1
0
  /**
   * Verifie que le formulaire est valide : champs requis renseignés, plages de valeur respectées.
   * Positionne isFormValid. Si valide, crée le bean personne reflet de la saisie. Sinon, positionne
   * les messages d'erreur de la forme msgNomDuChamp (ex : msgEmail)
   *
   * @param request
   * @throws SQLException
   */
  private void verifierFormulaire(HttpServletRequest request) throws SQLException {
    // Recuperer les parametres
    String civilite = request.getParameter("civilite");
    String nom = request.getParameter("nom");
    String prenom = request.getParameter("prenom");
    String adresse = request.getParameter("adresse");
    String codePostal = request.getParameter("cp");
    String ville = request.getParameter("ville");
    String telephone = request.getParameter("telephone");
    String telephone2 = request.getParameter("telephone2");
    String email = request.getParameter("email");
    String motPasse = request.getParameter("motDePasse");
    // Date sans importance, elle est fixée par la BD
    Timestamp time = Timestamp.valueOf("2000-01-01 00:00:00.0");
    boolean estInscrite = false;
    PersonneDao database = new PersonneDao();
    if (database.checkEmail(email)) {
      formIsValid = false;
      request.setAttribute("msgEmail", "L'email " + email + " existe déjà");
    }
    // Les tests pour vérifier si les champs sont vides
    if (nom.matches("^ *")) {
      formIsValid = false;
      request.setAttribute("msgNom", "Le nom est obligatoire");
    }
    if (prenom.matches("^ *")) {
      formIsValid = false;
      request.setAttribute("msgPrenom", "Le prénom est obligatoire");
    }
    if (email.matches("^ *")) {
      formIsValid = false;
      request.setAttribute("msgEmail", "L'email est obligatoire");
    }
    if (motPasse.matches("^ *")) {
      formIsValid = false;
      request.setAttribute("msgMotDePasse", "Le mot de passe est obligatoire");
    }

    if (formIsValid) {
      personne =
          new Personne(
              0,
              civilite,
              prenom,
              nom,
              adresse,
              codePostal,
              ville,
              telephone,
              telephone2,
              email,
              motPasse,
              time,
              estInscrite);
      System.out.println(personne);
    }
  }
Пример #2
0
  /**
   * @see Méthode doPost qui récupère les champs du formulaire et qui insère la personne dans la
   *     base de données.
   */
  protected void doPost(HttpServletRequest request, HttpServletResponse response)
      throws ServletException, IOException {
    // La JSP a afficher
    String vue = null;

    // Verifier que les champs obligatoires sont là
    formIsValid = true; // optimisme
    try {
      verifierFormulaire(request);
    } catch (SQLException e1) {
      // TODO Auto-generated catch block
      e1.printStackTrace();
    }
    if (!formIsValid) {
      // Les messages ont ete positionnes,
      // renvoyons vers le formulaire
      vue = "/WEB-INF/FormulaireInscription.jsp";
    } else {
      String msg = null;
      PersonneDao pDAO = new PersonneDao();
      try {
        assert personne.getCivilite() != null;
        pDAO.insert(personne);
        long cle = personne.getDateInscription().getTime();
        EnvoiMail.envoyer(
            personne.getEmail(),
            "Votre inscription sur Agriotes",
            "Veuillez cliquer sur le lien ci-joint pour "
                + "confirmer votre inscription : "
                // + "<a href='http://sio92250.no-ip.org:18080/Slam/ConfirmerInscription?cle="
                + "<a href='http://localhost:8080/Slam/ConfirmerInscription?cle="
                + cle
                + "&email="
                + personne.getEmail()
                + "'>Confirmation de l'inscription</a>");
        msg = "Un mail vous a été envoyé. Vous pouvez " + "confirmer votre inscription.";
      } catch (SQLException e) {
        e.printStackTrace();
        msg = e.getMessage();
      } catch (AddressException e) {
        e.printStackTrace();
        msg = e.getMessage();
      } catch (MessagingException e) {
        e.printStackTrace();
        msg = e.getMessage();
      }
      request.setAttribute("msg", msg);
      vue = "/WEB-INF/message.jsp";
    }
    request.getRequestDispatcher(vue).forward(request, response);
  }