使用用户在发件人地址中输入的电子邮件发送邮件

时间:2012-08-10 05:46:59

标签: email email-address

当用户通过公司网站发送一些查询时,他也会输入电子邮件,

现在有一种方法可以将收到的电子邮件反映给查询部门:

来自:user@xyz.com

to:enquiry@myCompany.com

主题:查询

一些文字

其中“user@xyz.com”是用户在查询表格中输入的电子邮件。

在某些电子贺卡网站上也可以看到同样的情况,您可以将ecard发送给您的朋友的电子邮件,然后他们会在“发件人”部分将您的地址收到。

如何实现这一目标?

------------ EDIT -------------
例如:

前端:

将ecard发送给您的朋友: 您的电子邮件地址:abc@xyz.com 您的朋友的电子邮件地址:lmn@pqr.com

然后朋友收到一封电子邮件:

来自:abc@xyz.com来自jkh.hk.dn.net
发送至:lmn@pqr.com
主题:ecard
电子邮件

正如您所看到的那样,虽然电子邮件是发送电子贺卡网站,但是地址反映了用户输入的电子邮件地址。

那么需要一些帮助才能实现这一目标?任何一个例子都会更有帮助...

2 个答案:

答案 0 :(得分:2)

使用“回复”和“发件人”字段可能会有更多成功,这些字段可能与来自地址不同,并且大多数邮件客户端都应该遵守 - 并且具有较少的“垃圾内容”含义:

所以你的表格有:

From address: user@abc.com
To address: friend@xyz.com

然后,当您生成电子邮件时,请将其发送为:

from: website@example.com // Your domain name, that is allowed to send emails
to: friend@xyz.com
reply-to: user@abc.com

通过这种方式,接收邮件服务器可以看到您对电子邮件的来源是否诚实,以及他们是否检查了from域的任何SPF记录,它们应与您的服务器匹配。但是,当用户点击“回复”时,电子邮件应该转到回复地址。

如果您确实要将用户的电子邮件设置为from字段,则应将系统电子邮件地址设置为sender

from: user@abc.com
sender: website@example.com
to: friend@xyz.com
reply-to: user@abc.com

这将导致电子邮件显示为“来自website@example.com代表user@abc.com”。

另请参阅以下Stack Overflow问题:

  

Should I use the Reply-To header when sending emails as a service to others?

答案 1 :(得分:1)

是的,您可以这样做,但这取决于您的邮件服务器具有哪些权限。当我管理服务器时,我确保禁用此选项。您需要与管理SMTP服务器的人交谈;但是,作为一名网络开发者,我知道你为什么要这样做,但我强烈反对。

您提出的建议非常危险,因为您在未经他人许可的情况下通过某人的域发送电子邮件。这意味着从技术上讲,我可以通过您的服务来到您的网站并填写任何消息和任何电子邮件地址以及“垃圾邮件”。

您最好将电子邮件设置为
    来自@ Mycompay的名字     给客户@ hisDomain
    BCC名称@ MYCompany