다음 코드를 사용하고 Javamail API를 사용하여 전자 메일을 보낼 수 있습니다.이 API를 통해 "FROM"을 "yahoo 전자 메일 ID"로 사용하여 모든 전자 메일 ID로 보낼 수 있습니다. 코드 :jsp에서 문의 양식을 만드시겠습니까?
mailFORM.html
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<title>Mail form in html</title>
</head>
<body>
<table border="1" width="50%" cellpadding="0" cellspacing="0">
<tr>
<td width="100%">
<form method="POST" action="mail.jsp">
<table border="1" width="100%" cellpadding="0" cellspacing="0">
<h1>Mail API</h1>
<tr>
<td width="50%"><b>To:</b></td>
<td width="50%"><input type="text" name="to" size="30"></td>
</tr>
<tr>
<td width="50%"><b>From:</b></td>
<td width="50%"><input type="text" name="from" size="30"></td>
</tr>
<tr>
<td width="50%"><b>Subject:</b></td>
<td width="50%"><input type="text" name="subject" size="30"></td>
</tr>
<tr>
<td width="50%"><b>Description:</b></td>
<td width="50%"><textarea name="description" type="text"
cols="40" rows="15" size=100>
</textarea>
</td>
</tr>
<tr>
<td><p><input type="submit" value="Send Mail" name="sendMail"></td>
</tr>
</table>
</p>
</form>
</td>
</tr>
</table>
</body>
</html>
mail.jsp
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<%@ page language="java" import="javax.naming.*,java.io.*,javax.mail.*,
javax.mail.internet.*,com.sun.mail.smtp.*"%>
<html>
<head>
<title>sending mail using contactus form</title>
</head>
<body>
<%
try{
Session mailSession = Session.getInstance(System.getProperties());
Transport transport = new SMTPTransport(mailSession,new URLName("smtp.mail.yahoo.com"));
transport = mailSession.getTransport("smtps");
transport.connect("smtp.mail.yahoo.com",465,"[email protected]","myyahoopassword");
MimeMessage m = new MimeMessage(mailSession);
m.setFrom(new InternetAddress(%><%request.getParameter("from")%><%));
Address[] toAddr = new InternetAddress[] {
new InternetAddress(%><%request.getParameter("to")%><%)
};
m.setRecipients(javax.mail.Message.RecipientType.TO, toAddr);
m.setSubject(%><%request.getParameter("subject")%><%);
m.setSentDate(new java.util.Date());
m.setContent(%><%request.getParameter("description")%><%, "text/plain");
transport.sendMessage(m,m.getAllRecipients());
transport.close();
out.println("Thanks for sending mail!");
}
catch(Exception e){
out.println(e.getMessage());
e.printStackTrace();
}
%>
</body>
지금, 나는 "에서"TO "필드를 제거 할 수 있습니다있는 간단한 CONTACTUS 양식을 만들려면 mailFORM.html "명백한 이유로 파일. 방문자가 내 웹 사이트를 방문하고 FROM, NAME, SUBJECT 및 설명을 입력하여 "[email protected]"으로 이메일을 보내길 원하기 때문입니다.
그래서 어떻게 username과 passwod를 입력 할 때이 문제를 제거 할 수 있습니까? 내가 여기에 passred 코드를 만들 수 없기 때문에. 나는 다른 smtp를위한 별도의 코드를 만들 수 없다 ... VISITIR로서 나의 웹 사이트 contactus 페이지를 visting하는 것은 어떤 도메인으로부터의 그의 이메일을 입력하여 폼을 채울 수있다. 같은 회사의 특정 전자 메일-ID에 세부 사항을 보내이 같은 형태 (모든 익명의 웹 사이트를 복용)을 만듭니다 "[email protected]을"
http://www.tutorialspoint.com/about/contact_us.htm
ok @ NAVEEED, 그래서 내가 언급 한 다른 것들 ... jsp에서 contactus 형식을 만들기 위해 서버의 사용자 이름/암호를 enetring하는 것을 피한다. 다시 게시판을 읽어주십시오 –
@amanChawla 내 대답을 참조해야합니다 –
ok nAvEeD, 저에게 많은 도움이 될 것입니다 ... 감사합니다 –