Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 18

Discussione: javamail

  1. #1

    javamail

    salve ragazzi, come posso fare per mandare via email ciò che si chekka in una JSP a un destinatario fisso?
    come sarei il codice da inserire nella servlet?
    GRAZIE MILLE

  2. #2
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,326
    La domanda è piuttosto vaga...
    Una checkbox in HTML viene renderizzata con un controllo input type="checkbox"... qualcosa così:


    codice:
    <input type="checkbox" name="nomeControllo" value="SI" />

    Se l'utente seleziona la checkbox, alla Servlet arriverà un valore (nel caso dell'esempio "SI") in request per il parametro "nomeControllo", altrimenti semplicemente non arriva nulla per quel parametro. Quindi:


    codice:
    String chk = request.getParameter("nomeControllo");
    if (chk != null) {
       // L'utente ha selezionato la checkbox
    } else {
       // L'utente NON ha selezionato la checkbox
    }

    Cosa fare, per ciascuno dei due casi, cosa trasmettere per e-mail, ecc lo sai solo tu.


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  3. #3
    come importare le cose chekkate in una servlet sono in grado di farlo...però il problema mi si pone quando ciò che chekko devo inviarlo via mail...e il destinatario è sempre lo stesso......

  4. #4
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,326
    Allora spiega meglio qual è il problema, perchè davvero non si capisce.
    Nella Servlet non si importa nulla... quello che si fa è solo verificare ciò che l'utente ha inoltrato oppure no nella request. Ed è ciò che ho mostrato con il codice d'esempio sopra. Se questo lo sai già fare, allora spiega bene cosa non sai fare.

    Perchè se stai chiedendo "come si invia un mail" (il fatto che il destinatario sia fisso è un non problema: se sai impostare un destinatario "variabile" a maggior ragione lo sai impostare fisso, visto che non cambia e non è legato ad alcuna variabile) allora tutto il discorso sulla checkbox non c'entra più nulla ed il problema è completamente diverso (perchè che si tratti di una checkbox, di una casella di testo, di un file o di una option non cambia assolutamente niente).

    Se hai una casella di testo, nella request ti arriva il "contenuto".
    Se hai una option, nella request ti arriva il "valore" della option selezionata
    Se hai un controllo input type="file", allora avrai una MultipartRequest con un File da recuperare
    Se hai un controllo checkbox, nella request ti arriva semplicemente un indicatore per capire se quella checkbox è selezionata oppure no.

    Quindi, cosa esattamente vuoi inviare via mail? Chi riceve questa mail cosa ci dovrà veder scritto dentro? Questo punto lo devi fare tu... ottieni il valore dalla request, se il valore non è nullo, nella mail scriverai "L'utente ha selezionato la checkbox tal dei tali", altrimenti scriverai "L'utente non ha selezionato la checkbox tal dei tali" (oppure non scriverai niente... lo decidi tu).


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  5. #5
    io devo passare il nome della checkbox per email no se e stato chetato o meno.....

  6. #6
    ma in seguto a quale evento?
    Spiegati con più parole, sii un pò più prolisso...altrimenti non riusciamo a darti una mano

    [edit]
    sai che il crossposting è vietato...
    http://www.iprogrammatori.it/forum-p...ox-t27396.html
    I computer sono incredibilmente veloci, accurati e stupidi.
    Gli uomini sono incredibilmente lenti, inaccurati e intelligenti.
    Insieme sono una potenza che supera l'immaginazione.

    A.Einstein

  7. #7
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,326
    Ok, dalla discussione sull'altro forum ho capito (perchè qui non l'hai scritto e, purtroppo, nessuno è in grado di leggerti nel pensiero) che tu hai una serie di checkbox... e vuoi far sapere via mail a qualcuno quali sono state selezionate e quali no. E' corretto?

    Se è così, la cosa è piuttosto banale. Supponendo che la pagina HTML generata sia qualcosa di questo tipo:

    codice:
    <input type="Checkbox" value="1" name="margherita">Margherita
    <input type="Checkbox" value="2" name="diavola">Diavola
    <input type="Checkbox" value="3" name="viennese">Viennese
    ...

    Quello che va fatto lato servlet è questo:

    codice:
    // Imposto di default tutte le scelte come NON SELEZIONATE
    boolean margherita = false;
    boolean diavola = false;
    boolean viennese = false;
    ...
    
    // Ora verifico, una per una, quali sono le scelte fatte dall'utente
    String chk = request.getParameter("margherita");
    if (chk != null) {
       margherita = true;   // L'utente ha selezionato "Margherita"
    }
    
    chk = request.getParameter("diavola");
    if (chk != null) {
       diavola = true;   // L'utente ha selezionato "Diavola"
    }
    
    chk = request.getParameter("viennese");
    if (chk != null) {
       viennese = true;   // L'utente ha selezionato "Viennese"
    }
    ...
    
    // Ora, in base ai valori delle variabili booleane sai cosa ha selezionato
    // l'utente e cosa no. E comporrai la tua mail di conseguenza. Ad esempio
    StringBuilder msg = new StringBuilder();
    msg.append("L'utente tal dei tali ha selezionato le seguenti pizze:\n\n");
    if ( margherita ) {
       msg.append("Margherita\n");
    }
    if ( diavola ) {
       msg.append("Diavola\n");
    }
    if ( viennese ) {
       msg.append("Viennese\n");
    }
    ...
    
    // Nell'oggetto "msg" hai il testo della mail da inviare: inviala
    ...

    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  8. #8
    codice:
            final String username = "xxx@hotmail.it";
            final String password = "xxx";
    
    
            Properties props = new Properties();
            props.put("mail.smtp.auth", "true");
            props.put("mail.smtp.starttls.enable", "true");
            props.put("mail.smtp.host", "smtp.live.com");
            props.put("mail.smtp.port", "25");
    
    
            Session session = Session.getInstance(props,
              new javax.mail.Authenticator() {
                protected PasswordAuthentication getPasswordAuthentication() {
                    return new PasswordAuthentication(username, password);
                }
              });
    
    
            try {
    
    
                Message message = new MimeMessage(session);
                message.setFrom(new InternetAddress("xxx@hotmail.it"));;
                message.setRecipients(Message.RecipientType.TO,
                    InternetAddress.parse("yyy@gmail.com"));
                message.setSubject("Testing Subject");
                //message.setText("Dear Mail Crawler,"
                //    + "\n\n No spam to my email, please!");
                            message.setText(nome+" " + cognome+" "+pizza);
    
    
    
    
                Transport.send(message);
    
    
                System.out.println("Done");
    
    
            } catch (MessagingException e) {
                throw new RuntimeException(e);
            }
        }

    io però ho questo codice per inviare la mail
    Ultima modifica di LeleFT; 16-03-2016 a 11:57 Motivo: Aggiunti i tag CODE

  9. #9
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,326
    E quindi?
    Componi il tuo messaggio (te l'ho fatto vedere sopra come fare) e passalo message.setText().
    Tale metodo vuole un String, quindi userai msg.toString().


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  10. #10
    per email ricevo solo "L'utente tal dei tali ha selezionato le seguenti pizze:" senza le pizze chekkate

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.