Этот код работает так, как я его использую; однако отправка его любым другим способом, но не напрямую через форму, приведет к тому, что a) владелец адреса электронной почты получит подтверждение, и b) подписчик будет добавлен с IP-адреса вашего сервера, а не с собственного, который может заблокировать вас после в то время как если это нарушает TOS Aweber. Если вам необходимо добавить подписчика в БД или выполнить другую обработку перед отправкой, лучший способ - выполнить всю обработку через ajax, а после завершения обработки вернуть true, чтобы форма отправлялась.
<?php
$strPost = '';
foreach($_POST as $key => $val)
{
$strPost .= $key . '=' . urlencode(trim($val)) . '&';
}
$strPost = substr($strPost, 0, -1);
$strUrl = 'http://www.aweber.com/scripts/addlead.pl';
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $strUrl);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_HEADER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER,array('Expect:');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_NOBODY, FALSE);
curl_setopt($ch, CURLOPT_POSTFIELDS, $strPost);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, TRUE);
curl_setopt($ch, CURLOPT_MAXREDIRS, 10);
$response = curl_exec($ch);
curl_close($ch);