我需要创建一个按钮,在按钮点击事件中将表单信息发送到电子邮件

时间:2012-09-03 01:08:34

标签: asp.net forms email button submission

我是编程的新手,我正在为我的个人业务创建一个Web表单,通过单击按钮将表单详细信息提交给电子邮件。我已经完成了搜索,但我还没能完全找到我正在寻找的内容。我不确定在提交Web表单时常见的协议是什么。我宁愿没有关于数据库的信息,因为它只是暂时的。虽然通过点击按钮将名称和电话号码提交到我的数据库可能很方便。

实际的电子邮件不需要格式化,我只需要几个文本框中的信息。我正在使用TextBox1 - TextBox6,如果有帮助的话。

非常感谢,

3 个答案:

答案 0 :(得分:1)

您需要使用System.Net.Mail类在C#中发送电子邮件。邮件服务器设置已在web.config system.net部分下的mailsettings文件中设置。例如,通过GMail帐户发送的电子邮件将使用以下设置:

<system.net>
    <mailSettings>
      <smtp from="[email_address_here]">
        <network host="smtp.gmail.com" port="587" userName="[username]" password="[password]" enableSsl="true" />
      </smtp>
    </mailSettings>
</system.net>

然后,在按钮单击事件中,您可以在Visual Studio中按钮属性的“事件”部分中访问该事件,您将放置代码以收集表单信息并发送电子邮件,如下所示:

//Initiate the mail client.
SmtpClient mail = new SmtpClient();

//You would probably get the to email from your form using TextBox1.Text or something similar, or use your own to email.
MailMessage mm = new MailMessage("from_email", "to_email");

//Set the message properties, using your TextBox values to format the body of the email.
//You can use string format to insert multiple values into a string based on the order of {0}, {1}, {2} etc.
mm.Body = string.Format("Hi {0}, thanks for emailing me.", TextBox2.Text);
mm.IsBodyHtml = true; //Or false if it isn't a HTML email.
mm.Subject = "Your Subject Here";

//Send the email.
mail.Send(mm);

您还需要在代码文件顶部加上using System.Net.Mail;行才能使用SMTPClient

答案 1 :(得分:0)

您使用的是哪种语言?

在php中,它会是这样的:

<form action="post.php" method="post">
... your form inputs
</form>

然后在post.php中:

mail($_POST['email'],$_POST['subject'],$_POST['body']);

分享您正在使用的代码,我可以更具体。

答案 2 :(得分:0)

任何应用程序服务器都应该能够执行此操作。听起来你只需要一个简单的脚本 - PHP或Ruby是实用的 - 处理Web请求,提取数据并将其投入电子邮件。也许我错过了部分问题,但如果你的字面意思是你想知道协议,那么答案就是HTTP。