String naar een email adres sturen.

Status
Niet open voor verdere reacties.

bjornbos

Gebruiker
Lid geworden
1 feb 2009
Berichten
446
Hallo allemaal,

Stel, mensen willen met mij in contact komen, dan kunnen ze een formulier invullen. Dit formulier is gemaakt met java.

Men vult in textField1 iets in. Daar zet ik een string op.

Code:
String invoer = TextField1.getText();

Wanneer iemand op "Verzenden" drukt, moet de inhoud (String) van textField1 verzonden worden naar mijn email: voorbeeld@live.nl.

Hoe doe ik dit, weet iemand een bestaande code?

Met vriendelijke groeten,

Björn Bos
 
Zou het hiermee kunnen?

Code:
Properties props = new Properties();
    props.put("mail.smtp.host", "my-mail-server");
    props.put("mail.from", "me@example.com");
    Session session = Session.getInstance(props, null);

    try {
        MimeMessage msg = new MimeMessage(session);
        msg.setFrom();
        msg.setRecipients(Message.RecipientType.TO,
                          "you@example.com");
        msg.setSubject("JavaMail hello world example");
        msg.setSentDate(new Date());
        msg.setText("Hello, world!\n");
        Transport.send(msg);
    } catch (MessagingException mex) {
        System.out.println("send failed, exception: " + mex);
    }

@Edit

Nee dat kan niet, neem ik aan?
 
Laatst bewerkt:
E-mails sturen vanuit java is niet echt eenvoudig uit te leggen. Je code is dan wel correct, je moet ook je mailserver instellen, of gebruik maken van de diensten van bestaande mailservers. Begin bij het begin, ik kan niet het ene moment je operatoren zitten uitleggen en het volgende moment mailservers. Die stap is gewoon te groot. Je bent duidelijk enthousiast maar als je echt kwaliteitsvolle hulp wil, leg dan uit wat je project is, wat je wil bereiken, wat je kennis is en waar je staat. Dan kunnen wij je stapsgewijs helpen opbouwen.
 
Hallo!

Bedankt voor je reactie. Ik had niet verwacht dat er zo veel bij kwam kijken. Om even bij het begin te beginnen:

Ik ben bezig met een website en wanneer mensen mij willen bereiken, kunnen ze dit doen doormiddel van een contactformulier in te vullen. Bovendien moeten mensen het kunnen aangeven wanneer een bepaald iets op mij site niet klopt. Dat dan hier.

Ik wil graag, dat de informatie die ze invoeren naar mij verzonden word. Het liefst naar mijn e-mail adres. Wat jij zegt met mailservers, ik heb wel een server staan thuis (compaq hp proliant ml350 g3) die ik daar voor kan gaan gebruiken.

Ikzelf ben eigenlijk net een paar weken bezig met java en ben nog echt een beginneling. Die formulieren maken is dan ook een van de dingen die ik redelijk kan, maar het is natuurlijk niet perfect. Dingen die ik niet snap, ben ik altijd bereid te leren. Zo lang alles stap voor stap wordt uitgelegd kan ik heel ver komen, dat weet ik van mezelf, en dat is ook logisch.

Dus als jij het mij uit kunt leggen, stap voor stap, dan zou ik dat heel fijn vinden. Natuurlijk hoor ik het ook graag van je als je alternatieven hebt, maar wel graag via de formulieren die ik gemaakt heb. Ik heb ze namelijk zelf gemaakt, ik weet hoe ze in elkaar zitten en ik kan ze dus snel en gemakkelijk aanpassen als ik dit wil.

Ik ben bereid om te leren, dus je zal het niet voor niets uit leggen, ik ga er zeker wat mee doen!


Met vriendelijke groeten,

Björn Bos
 
Eerste richtlijn: er zijn verschillende manieren om gegevens in te voeren in een programma. Ongeacht welke vorm van visualisatie je gebruikt moet je eerst zorgen dat, als er data binnenkomt, deze goed verwerkt wordt. Het gedeelte van het programma dat je gegevens gaat verwerken noemen we het model. Dit is het belangrijkste stuk. Het is leuker om met de visualisatie te beginnen maar zolang dit niet fatsoenlijk werkt kan je visualisatie ook niet fatsoenlijk werken.

Dan is er de visualisatie (view). Als ik het goed begrijp wil je gewoon een invoerformulier maken. Wel, over het web zijn er verschillende technieken maar in jouw geval lijkt JSP (of een afgeleide, genre JSF of ZK) de beste oplossing. Waarom? In tegenstelling tot Applets moet de gebruiker geen java op zijn computer hebben en gaat ook de responstijd beduidend naar beneden aangezien er gebruik gemaakt wordt van standaard HTML. Applets zijn eigenlijk enkel voor echte grafische omgevingen, al de rest is in feite overkill.

E-mail is voorlopig compleet overbodig, als iemand gegevens heeft ingevuld moet dat rechtstreeks op je server staan, niet in je e-mail.

Maar beginnen doe je dus met je model. Maak een object aan van hetgeen je wilt gebruiken. Laat ik als voorbeeld je contactformulier nemen. Hier heb 2 classes,
Er is een class Boodschap met zijn titel en zijn tekst en die heeft een class Persoon met zijn naam, emailadres en welke gegevens je nog wilt hebben. Bij het aanmaken van bv. een persoon wordt gecontroleerd of de gegevens juist zijn. Is dat niet het geval wordt er een error verzonden. Is alles wel correct worden de gegevens opgeslagen in je database.
 
Laatst bewerkt:
emails versturen lukt altijd heb je helaas geen server voor nodig ik heb je contactcode bekenen en al iets aangepast kunt u mij bevestigen of je de //****** mystars aanpassing ook ziet.Je moet je code nu nog eens bekijken of alle if structuren zitten hoe jij denkt dat ze moeten zitten.

Er zal nog veel uit moeten maar dat komt wel
Code:
import java.awt.*;
import java.awt.event.*;
import java.applet.Applet;

/**
  *
  * beschrijving
  *
  * @version 1.0 van 22-3-2011
  * @author
  */

public class Contact extends Applet {
  // Begin variabelen
  private Label tekstonder = new Label();
  private Label tekstboven = new Label();
  private Label ster1 = new Label();
  private Label ster2 = new Label();
  private Label ster3 = new Label();
  private Label ster4 = new Label();
  private Button ja = new Button();
  private Button nee = new Button();
  private Button versturen = new Button();
  private Label verzonden = new Label();
  private TextField naamveld = new TextField();
  private TextField emailveld = new TextField();
  private TextField onderwerpveld = new TextField();
  private TextArea berichtveld = new TextArea("", 1, 1, TextArea.SCROLLBARS_VERTICAL_ONLY);
  // Einde variabelen

  public void init() {
    Panel cp = new Panel(null);
    cp.setBounds(0, 0, 305, 314);
    add(cp);
    // Begin componenten
    tekstonder.setBounds(8, 216, 261, 16);
    tekstonder.setText("");
    tekstonder.setFont(new Font("MS Sans Serif", Font.PLAIN, 13));
    tekstonder.setVisible(false);
    tekstonder.setForeground(Color.RED);
    cp.add(tekstonder);
    tekstboven.setBounds(3, 0, 300, 13);
    tekstboven.setText("");
    tekstboven.setFont(new Font("MS Sans Serif", Font.PLAIN, 11));
    tekstboven.setForeground(Color.RED);
    cp.add(tekstboven);
    ster1.setBounds(192, 24, 21, 24);
    ster1.setText("");
    ster1.setFont(new Font("MS Sans Serif", Font.PLAIN, 17));
    ster1.setForeground(Color.RED);
    cp.add(ster1);
    ster2.setBounds(191, 56, 21, 24);
    ster2.setText("");
    ster2.setFont(new Font("MS Sans Serif", Font.PLAIN, 17));
    ster2.setForeground(Color.RED);
    cp.add(ster2);
    ster3.setBounds(190, 88, 21, 24);
    ster3.setText("");
    ster3.setFont(new Font("MS Sans Serif", Font.PLAIN, 17));
    ster3.setForeground(Color.RED);
    cp.add(ster3);
    ster4.setBounds(256, 120, 21, 24);
    ster4.setText("");
    ster4.setFont(new Font("MS Sans Serif", Font.PLAIN, 17));
    ster4.setForeground(Color.RED);
    cp.add(ster4);
    ja.setBounds(8, 240, 35, 25);
    ja.setLabel("Ja");
    ja.addActionListener(new ActionListener() {
      public void actionPerformed(ActionEvent evt) {
        ja_ActionPerformed(evt);
      }
    });
    ja.setFont(new Font("MS Sans Serif", Font.BOLD, 13));
    ja.setVisible(false);
    cp.add(ja);
    nee.setBounds(48, 240, 43, 25);
    nee.setLabel("Nee");
    nee.addActionListener(new ActionListener() {
      public void actionPerformed(ActionEvent evt) {
        nee_ActionPerformed(evt);
      }
    });
    nee.setFont(new Font("MS Sans Serif", Font.BOLD, 13));
    nee.setVisible(false);
    cp.add(nee);
    versturen.setBounds(8, 208, 83, 25);
    versturen.setLabel("Versturen");
    versturen.addActionListener(new ActionListener() {
      public void actionPerformed(ActionEvent evt) {
        versturen_ActionPerformed(evt);
      }
    });
    versturen.setFont(new Font("MS Sans Serif", Font.BOLD, 13));
    cp.add(versturen);
    verzonden.setBounds(11, 248, 285, 16);
    verzonden.setText("");
    verzonden.setFont(new Font("MS Sans Serif", Font.PLAIN, 13));
    verzonden.setForeground(Color.RED);
    verzonden.setVisible(false);
    cp.add(verzonden);
    naamveld.setBounds(8, 24, 177, 24);
    naamveld.setText("");
    cp.add(naamveld);
    emailveld.setBounds(8, 56, 177, 24);
    emailveld.setText("");
    cp.add(emailveld);
    onderwerpveld.setBounds(8, 88, 177, 24);
    onderwerpveld.setText("");
    cp.add(onderwerpveld);
    berichtveld.setBounds(8, 120, 241, 81);
    berichtveld.setText("");
    cp.add(berichtveld);
    // Einde componenten

  }
  public void setmystars(){//*****
      ster1.setText((naamveld.getText().equals(""))?"*":"");
      ster2.setText((emailveld.getText().equals(""))?"*":"");
      ster3.setText((onderwerpveld.getText().equals(""))?"*":"");
      ster4.setText((berichtveld.getText().equals(""))?"*":"");
  }
  // Begin eventmethoden
  public void versturen_ActionPerformed(ActionEvent evt){
     String Email = emailveld.getText();
     String Onderwerp = onderwerpveld.getText();
     String Bericht = berichtveld.getText();
     if(naamveld.getText().equals("")
     || emailveld.getText().equals("")
     || onderwerpveld.getText().equals("")
     || berichtveld.getText().equals(""))
     {
      if(!emailveld.getText().equals(""))
      {
        if(!emailveld.getText().contains("@")|| !emailveld.getText().contains(".")){
          tekstboven.setText("* Er ontbreken gegevens en het email adres is onjuist.");
          ster2.setText("*");
          setmystars();//*****
        }else{
         if(emailveld.getText().startsWith(" ")|| emailveld.getText().endsWith(" ")){
           if (Email != null)
	           Email = Email.trim();
	           emailveld.setText(Email);
	           if(emailveld.getText().contains(" ")){
		         tekstboven.setText("* Er ontbreken gegevens en het email adres bevat spaties.");
		         ster2.setText("*");
	           }else{
	            tekstboven.setText("* Er ontbreken gegevens.");
	            setmystars();//*****
	           }
          }else{
          if(emailveld.getText().contains(" ")){
            tekstboven.setText("* Er ontbreken gegevens en het email adres bevat spaties.");
            ster2.setText("*");
          }else{
            tekstboven.setText("* Er ontbreken gegevens.");
            setmystars();//*****
          }
         }
        }
      }else{
       tekstboven.setText("* Er ontbreken vereiste gegevens.");
       setmystars();//*****
      }
     }else{
     ster1.setText("");
     ster3.setText("");
     ster4.setText("");
     if(!emailveld.getText().contains("@")|| !emailveld.getText().contains(".")){
       tekstboven.setText("* Email adres is onjuist.");
       ster2.setText("*");
     }else{
      if(emailveld.getText().startsWith(" ")|| emailveld.getText().endsWith(" ")){
        if (Email != null)
        Email = Email.trim();
        emailveld.setText(Email);
        if(emailveld.getText().contains(" ")){
          tekstboven.setText("* Email adres bevat spaties.");
          ster2.setText("*");
        }else{
         tekstonder.setText("Zijn bovenstaande gegevens correct?");
         tekstboven.setText("");
         ster1.setText("");
         ster2.setText("");
         ster3.setText("");
         ster4.setText("");
         naamveld.setFocusable(false);
         emailveld.setFocusable(false);
         onderwerpveld.setFocusable(false);
         berichtveld.setFocusable(false);
         naamveld.setEditable(false);
         emailveld.setEditable(false);
         onderwerpveld.setEditable(false);
         berichtveld.setEditable(false);
         versturen.setVisible(false);
         ja.setVisible(true);
         nee.setVisible(true);
         tekstonder.setVisible(true);
         versturen.setVisible(false);
         naamveld.setEnabled(false);
         emailveld.setEnabled(false);
         onderwerpveld.setEnabled(false);
         berichtveld.setEnabled(false);
        }
      }else{
       if(emailveld.getText().contains(" ")){
         tekstboven.setText("* Email adres bevat spaties.");
         ster2.setText("*");
       } else{
         tekstonder.setText("Zijn bovenstaande gegevens correct?");
         tekstboven.setText("");
         ster1.setText("");
         ster2.setText("");
         ster3.setText("");
         ster4.setText("");
         naamveld.setFocusable(false);
         emailveld.setFocusable(false);
         onderwerpveld.setFocusable(false);
         berichtveld.setFocusable(false);
         naamveld.setEditable(false);
         emailveld.setEditable(false);
         onderwerpveld.setEditable(false);
         berichtveld.setEditable(false);
         versturen.setVisible(false);
         ja.setVisible(true);
         nee.setVisible(true);
         tekstonder.setVisible(true);
         versturen.setVisible(false);
         naamveld.setEnabled(false);
         emailveld.setEnabled(false);
         onderwerpveld.setEnabled(false);
         berichtveld.setEnabled(false);
       }
      }
     }
   }
  }

  public void ja_ActionPerformed(ActionEvent evt) {
    verzonden.setText("Uw bericht is ontvangen, dank u wel.");
    naamveld.setText("");
    emailveld.setText("");
    onderwerpveld.setText("");
    berichtveld.setText("");
    tekstonder.setText("");
    ja.setVisible(false);
    nee.setVisible(false);
    naamveld.setText("                  Verzonden");
    emailveld.setText("                  Verzonden");
    onderwerpveld.setText("                  Verzonden");
    berichtveld.setText("\n"+"\n"+"                  Verzonden");
    naamveld.setEnabled(false);
    emailveld.setEnabled(false);
    onderwerpveld.setEnabled(false);
    berichtveld.setEnabled(false);
    verzonden.setVisible(true);
  }

  public void nee_ActionPerformed(ActionEvent evt) {
     naamveld.setFocusable(true);
     emailveld.setFocusable(true);
     onderwerpveld.setFocusable(true);
     berichtveld.setFocusable(true);
     naamveld.setEditable(true);
     emailveld.setEditable(true);
     onderwerpveld.setEditable(true);
     berichtveld.setEditable(true);
     versturen.setVisible(true);
     ja.setVisible(false);
     nee.setVisible(false);
     tekstonder.setText("");
     tekstonder.setVisible(false);
     naamveld.setEnabled(true);
     emailveld.setEnabled(true);
     onderwerpveld.setEnabled(true);
     berichtveld.setEnabled(true);
  }


  // Einde eventmethoden

}
 
emails versturen lukt altijd heb je helaas geen server voor nodig
Alleen wordt het door nagenoeg elke filter tegengehouden, omdat je anders te gemakkelijk een email zou kunnen zenden vanuit mijnExHaarEmail@abc.com naar mijnExHaarBaas@def.com dus is dit helaas/gelukkig bijna volledig onbruikbaar. De kans is bovendien te groot dat je op een spamlist terechtkomt en je problemen krijgt met je provider. De emailfunctie werkt, maar tenzij je echt weet wat je doet kan je het beter vermijden.
 
Laatst bewerkt:
Het lijkt bizar om het life te gebruiken maar e ge moet weten dat hij mogelijks naar zichzelf stuurt dus kan hij een rule maken die die mail opvangt en toch doorlaat

Zo heb ok ook een filter gebouwt om geld aftrogelaars te vangen maar dan ook onmiddelijk te verklikken maar dan wordt er niet meer gezocht op mailaddress of domein
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan