0
votes

A question regarding send mail in mvc 3.

When I click on btnApply it should send 2 emails to [email protected] and also send an acknowledgement to (who filled email id in apply form like be [email protected])

For example:

when a Email3 click apply send mail from Email1(Sender) to Email2(receiver) & Email3(receiver)

or

when a Email3 click apply send mail from Email2(Sender) to Email2(receiver) & Email3(receiver)

  1. I have form in popup:

     @using (Html.BeginForm()){
     Your Full Name
        <input type="text" value="" id="txtname" name="txtname" required />
        Your Email          
        <input type="email" value="" id="txtemail" name="txtemail"  required />    
        Upload Your Resume
        <input name="Upload Saved Replay" id="btnFile" type="file" />
        <input type="button" id="btnApply" name="btnApply" value="Apply" />
    }
    
  2. I have a email manager, it only send 1 mail that from [email protected] to email id that specified in apply form ([email protected] )

    public class EmailManager
    {
        private const string EmailFrom = "[email protected]";
        public static void Enquiry( int JobId, string UserName, string Email, string Massage)
        {
            using (var client = new SmtpClient()) {
                using (var message = new MailMessage(EmailFrom, Email)) {
                    message.Subject = "Successful";
                    message.Body = "<html><head><meta content=\"text/html; charset=utf-8\" /></head><body><p>Dear " + UserName +
                        ", </p> <p>Thankyou for Registering</p>"
                        + "</a></p><div>Best regards,</div><div>Nisha</div></body></html>";
                    message.IsBodyHtml = true;
                    client.EnableSsl = true;
                    client.Send(message);
                };
            };
        }
    }
    
1
in your code EmailFrom is [email protected] so why do you want to send it to the same [email protected]jamiedanq
I think you should be clear as to what you want to do. Which ones are EmailFrom and which ones you sending to Email. If you clarify that it is easier to know how to send your email. Also if you want other Emails copied into the email you are sending indicate it clearlyjamiedanq
Rename your variable EmailFrom to EmailTo for easier understanding and for best practice i suggest you comment your code to make it easier to readjamiedanq
does your code even run? if it does what happens when it runs?jamiedanq
for the meantime look at this it should help stackoverflow.com/questions/7498968/…jamiedanq

1 Answers

0
votes

You could use a for loop between two usings.

string[] Emails = { Email,"[email protected]", "[email protected]" }

for(var i = 0; i < 3; i++) 
{
    using (var message = new MailMessage(EmailFrom, Emails[i]))
    {   
        message.Subject = "Successful";
        message.Body = "<html><head><meta content=\"text/html; charset=utf-8\" /></head><body><p>Dear " + UserName +
        ", </p> <p>Thankyou for Registering</p>"
        + "</a></p><div>Best regards,</div><div>Nisha</div></body></html>";
        message.IsBodyHtml = true;
        client.EnableSsl = true;
        client.Send(message);
    };
}

Variable Email comes from void Enquiry, others are hard coded