Я читал множество вопросов и ответов повсюду, и эти сообщения о стековом потоке, похоже, наиболее связаны с тем, что я пытаюсь сделать:
1) Как мы можем сохранить данные на двух серверах, используя одну форму sumit?
2) Как вызвать метод действия на стороне сервера непосредственно перед отправкой формы на сторонний URL-адрес?
По сути, я работаю со службой автоответчика Aweber, и у меня возникли некоторые технические проблемы, когда кажется, что лидирующие позиции в Aweber не записываются, хотя я вижу, что в моем аналитическом программном обеспечении люди заполняют формы по электронной почте и нажимают на кнопка отправки.
Итак, я надеялся, что смогу сначала собрать данные формы на моем сервере в файл TXT, прежде чем данные формы будут отправлены в Aweber.
(из моего исследования мне нужен ajax, jquery для этого)
Следуя различным постам и учебникам, я придумал следующее, но, к сожалению, все еще не работает ...
Пожалуйста, дайте мне знать, как исправить этот код, если это возможно. СПАСИБО, ОГРОМНОЕ !!!
Голова с jquery:
<script type="text/javascript" src="http://code.jquery.com/jquery-latest.js"></script>
<script type="text/javascript">
$(document).ready(function() {
//if submit button is clicked
$('#submit').submit(function () {
//Get the data from all the fields
var email = $('input[name=email]');
var custom_sub1 = $('input[name=custom sub1]');
var custom_sub2 = $('input[name=custom sub2]');
var custom_sub3 = $('input[name=custom sub3]');
//organize the data properly
var data = 'email=' + email.val() + '&custom_sub1=' + custom_sub1.val() + '&custom_sub2='
+ custom_sub2.val() + '&custom_sub3=' + custom_sub3.val();
//start the ajax
$.ajax({
//this is the php file that processes the data and send mail
url: "http://mydomain.com/form_plus_email.php",
//method
type: 'POST',
//pass the data
data: data,
//Do not cache the page
cache: false,
success: function() {
}
});
//cancel the submit button default behaviours
return false;
});
});
</script>
</head>
Выше, я не знаю, если "вернуть ложь"; вызывает проблемы
Тело с формой:
<form method="post" action="http://www.aweber.com/scripts/addlead.pl">
<input type="text" name="email" value="Enter email" id="email">
<input value="xxxxxxxxxxxx" name="meta_web_form_id" type="hidden">
<input value="" name="meta_split_id" type="hidden">
<input value="xxxxxxxxxxxxx" name="listname" type="hidden">
<input value="http://domain.com/thankyoupage" name="redirect" type="hidden">
<input value="http://domain.com/thankyoupage" name="meta_redirect_onlist" type="hidden">
<input value="xxxxxxxxxxxxx" name="meta_adtracking" type="hidden">
<input value="1" name="meta_message" type="hidden">
<input value="email" name="meta_required" type="hidden">
<input value="1" name="meta_forward_vars" type="hidden">
<input value="" name="meta_tooltip" type="hidden">
<script type="text/javascript">
{
document.write('<input type="hidden" name="custom sub1" value="'+sub1+'">')
document.write('<input type="hidden" name="custom sub2" value="'+sub2+'">')
document.write('<input type="hidden" name="custom sub3" value="'+sub3+'">')
}
</script>
<input type="image" value="Submit Button" name="submit" src="image.png" id="submit" class="button1">
</form>
</body>
Для Aweber важно, чтобы все перечисленные поля как скрытые, так и не скрытые, передавались действию = "http://www.aweber.com/scripts/addlead.pl".
Однако для себя, поскольку меня интересуют только 4 поля, я указал все, что мне нужно, в разделе jquery тега head.
Я не знаю, почему код не работает ... Итак, как мне убедиться, что он сначала сохранит на моем сервере ajax до данные формы будут переданы на сторонние URL ? Прямо сейчас ...
<form method="post" action="http://www.aweber.com/scripts/addlead.pl">
выполняется и работает должным образом ... но ajax вообще не сохраняет данные из того, что я могу сказать
Спасибо большое!