2014-02-13 119 views
0

所以我发送一封HTML电子邮件,这是一个邀请,我希望用户点击加入!如果他们想加入邀请,但我不知道如何检索他们的电子邮件地址。我只能得到我有多少“是”的命中,我看不到哪个电子邮件实际上说过是。我怎样才能得到他们的电子邮件地址?除了向他们提供一个文本字段,要求他们填写它。使用html检索接收者的电子邮件地址

有什么想法?谢谢:)

我至今凯德:

<html> 
<body> 
    <form action="myserver.com" method="POST" target="_blank"> 
     <input type="hidden" name="answer" value="yes"/> 
     <input type="submit" name="submit" value="Join!"/> 
    </form> 
</body> 
</html> 

对于服务器端,我使用PHP来检索数据。任何事都可以从那里完成?就我所知,我不能在我的电子邮件中使用PHP或JS。

+0

您使用哪种语言检索数据?你的服务器端(或JavaScript)代码是怎样的? – enyce12

+1

您需要以编程方式添加一些标识,例如使用您当前使用的电子邮件地址添加另一个隐藏字段。你不能复制/粘贴一个HTML邮件给大家。你有访问编程语言和服务器吗? – x29a

+0

对于服务器端,我使用PHP来检索数据。任何事都可以从那里完成?就我所知,我不能在我的电子邮件中使用PHP。但在服务器端,我正在使用它。我可以使用任何其他所需的语言,只要它能完成工作。任何帮助? :) – user3304841

回答

1

既然你提到PHP,为什么不以编程方式发送电子邮件?

假设您有一个可用的SMTP配置(请参阅Local SMTP),可以使用PHPsend列出电子邮件中的所有电子邮件地址。

见的例子在为所需的HTML特定的头文件的资源

<?php 
$email_addresses = array('[email protected]', '[email protected]'); 

// subject 
$subject = 'Invitation'; 

// message 
$message = ' 
<html> 
<body> 
    <form action="myserver.com" method="POST" target="_blank"> 
     <input type="hidden" name="answer" value="yes"/> 
     <input type="hidden" name="email" value="%placeholder%" /> 
     <input type="submit" name="submit" value="Join!"/> 
    </form> 
</body> 
</html> 
'; 

// To send HTML mail, the Content-type header must be set - general part of the header 
$headers = 'MIME-Version: 1.0' . "\r\n"; 
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n"; 
$headers .= 'From: Invitation <[email protected]>' . "\r\n"; 

// iterate over all email addresses 
foreach ($email_addresses as $address) 
{ 
    // specific version of header 
    $header = $headers . 'To: ' . $address . ' . "\r\n"; 

    // specific version of message 
    $msg = str_replace('%placeholder%', $address, $message); 

    // Mail it 
    mail($address, $subject, $msg, $header); 
} 
?> 

像往常一样,有很多种方法来罗马,所以你也可以输入一个链接到一具有电子邮件地址的邮件(或一些其他类型的ID)作为GET参数。

特别注意编码(ISO与UTF)。

此外,您的网络服务器将成为电子邮件的发件人,因此如果地址与FROM字段不同,它可能会在垃圾邮件过滤器中被捕获。

让PHP的mail()函数工作可能有点棘手,但互联网充满了解决方案,所以祝你好运!

1

你将不得不把他们的地址作为一个参数在href网址。这是让它恢复的唯一方法。

我不会打扰把所有的PHP代码的邮件在这里,但是当你经过是这样的:

$address = "[email protected]"; 
$msg = '... <a href="http://yoursite.com?email='.$address.'">click here</a> ...' 
mail($address, $subject, $msg, $header); 

它会在电子邮件中这样渲染:

<a href="http://[email protected]">click here</a> 

当他们点击它,它会将参数发送到您的网页,您可以在其中访问它$_GET['email']

相关问题