【问题标题】:vb asp.net contact formvb asp.net 联系表
【发布时间】:2014-05-28 17:11:26
【问题描述】:

已经创建了一个简单的联系表格供客户网站使用,并且可以获取电子邮件(我暂时使用我的 gmail 帐户)但是当它发送时它显示它来自我,无论我在电子邮件字段中输入什么。请帮忙!可能是完全无知的东西,但请帮忙!我希望电子邮件来自 txtEmail.text 字段。有什么我需要添加到我的 web.config 或 GoDaddy 方面的东西吗?谢谢。下面是我的代码。我知道我需要包括尝试捕获和清除字段,但这将在我让它工作之后出现!是的,我确实包含了我的真实凭据。

Imports System.Net.Mail.MailAddress
Imports System.Net.Mail.MailMessage
Imports System.Net.NetworkCredential
Imports System.Net.Mail



Partial Class Default2

Inherits System.Web.UI.Page

Protected Sub btnSubmit_Click1(ByVal sender As Object, ByVal e As System.EventArgs)   Handles          btnSubmit.Click



    Dim Msg As New MailMessage()

    ' Sender e-mail address.

    Msg.From = New MailAddress(txtEmail.Text)


    ' Recipient e-mail address.

    Msg.To.Add("lchevy5@gmail.com")


    Msg.Subject = txtSubject.Text

    Msg.Body = "Sent From:" & txtName.Text + Environment.NewLine + "Email:" & txtEmail.Text +    Environment.NewLine + txtMessage.Text

    ' your remote SMTP server IP.

    Dim smtp As New SmtpClient()

    smtp.Host = "smtp.gmail.com"

    smtp.Port = 25

    smtp.Credentials = New System.Net.NetworkCredential("user", "pass")

    smtp.EnableSsl = True

    smtp.Send(Msg)

    'Msg = null;
    lbltexts.Visible = True




End Sub



End Class

【问题讨论】:

  • 我刚刚注意到侧边栏上的相关帖子。我昨天搜索了几个小时,所以不知道为什么我没有早点找到它们。谢谢。

标签: asp.net vb.net email


【解决方案1】:

您的代码看起来正确,但您是通过 Gmail 发送的。他们的 SMTP 服务器可能会重写 FROM 字段,以便它与您用于身份验证的电子邮件地址匹配。

您可能想查看this question。

或者,您可以通过不这样做的 SMTP 服务器发送邮件。

【讨论】:

    【解决方案2】:
    Private Sub Button2_Click(sender As Object, e As EventArgs) Handles 
    Button2.Click
        Dim MyMessage As New MailMessage
    
        Try
            MyMessage.From = New MailAddress(TextBox2.Text)
            MyMessage.To.Add("Example@gmail.com")
            MyMessage.Subject = TextBox3.Text + body
            MyMessage.Body = TextBox4.Text
            Dim SMTP As New SmtpClient("smtp.gmail.com")
            SMTP.Port = 587
            SMTP.EnableSsl = True
            SMTP.Credentials = New System.Net.NetworkCredential("Example@gmail.com", "Password")
            SMTP.Send(MyMessage)
            MessageBox.Show("Success")
        Catch ex As Exception
            MessageBox.Show("failed To Send")
        End Try
    End Sub
    

    尝试使用此代码为您指定的邮件 ID 发送电子邮件

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-02-16
      • 2012-03-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-04-07
      • 1970-01-01
      相关资源
      最近更新 更多