2012-11-21 67 views
1

当前有一个通讯订阅表单,将信息提交给ExactTarget帐户。 是否可以用相同的表单发送电子邮件,类似于PHP联系表单? 有一次,这是一个PHP表单。ExactTarget订阅表单也发送表单详细信息

我做了检讨丹佛MailChimp在联系表选项订阅: Mail Chimp Subscribe In Contact Form

这种形式并不需要一个复选框订阅电子报。

<form action="http://cl.exct.net/subscribe.aspx?lid=hidden" name="subscribeForm" method="post"> 
<input type="hidden" name="thx" value="enewsletter-thank-you.php" /> 
<input type="hidden" name="err" value="enewsletter-error.php" /> 
<input type="hidden" name="MID" value="hidden" /> 

<ul class="contactForm">  
<li class="contactForm"> 
<label class="formFieldQuestion">E-mail Address:&nbsp;<span class="redrequired">*</span></label> 
<input class="field-text" type="text" name="Email Address" size="20" value=""></li> 

<li class="contactForm"> 
<label class="formFieldQuestion">Full Name:</label> 
<input class="field-text" type="text" name="Full Name" size="20" value=""></li> 

<li class="contactForm"> 
<label class="formFieldQuestion">Company:</label> 
<input class="field-text" type="text" name="Company or Organization" size="20" value=""></li> 

<li style="padding-left:10px;"> 
<input id="saveForm" class="button_form" type="submit" value="Subscribe" name="submit"> </li> 

</ul> 
</form> 
+0

忘了提示电子邮件会包含与订阅字段相同的信息。 – Eric

+1

你可以添加一个ajax调用来提交数据到联系人发布url。 –

回答

2

是的,您可以将此作为卷发请求发送。将您的表单操作更改为mail_and_submit.php

然后,在mail_and_submit.php

//extract data from the post 
extract($_POST); 

//set POST variables 
$url = 'http://cl.exct.net/subscribe.aspx?lid=hidden'; 
$fields = array(
      'thx' => urlencode($thx), 
      'error' => urlencode($error), 
      'MID' => urlencode($MID), 
... (etc) 
); 

//url-ify the data for the POST 
foreach($fields as $key=>$value) { $fields_string .= $key.'='.$value.'&'; } 
rtrim($fields_string, '&'); 

//open connection 
$ch = curl_init(); 

//set the url, number of POST vars, POST data 
curl_setopt($ch,CURLOPT_URL, $url); 
curl_setopt($ch,CURLOPT_POST, count($fields)); 
curl_setopt($ch,CURLOPT_POSTFIELDS, $fields_string); 

//execute post 
$result = curl_exec($ch); 

//close connection 
curl_close($ch); 

然后,建立与同一领域的电子邮件消息,并发送,喜欢的东西:

$message = 'A post was submitted:<br/>'; 
$message .= 'thx: ' . $thx; 
$message .= 'error: ' . $error; 
$message .= 'MID: ' . $mid; 

...等,然后用邮件:

mail('[email protected]', 'Your Entry', $message); 
+0

谢谢@jnunn会检查并告诉你。 – Eric

+0

MID,thx和error是Exact Target处理的隐藏值,有没有办法通过cURL发送这个数据?此外,thx和错误是重定向以确认用户订阅或在处理中发生错误。 – Eric

+0

cURL的作品,但精确的目标是不像表单数据提交,试图采取这个Ajax调用,并更改它提交的数据:[链接] https://gist.github.com/3841680 – Eric

相关问题