Я использую сторонний инструмент. Вот форма для этого:
<form method="POST"
action="https://www.thewiseagent.com:443/secure/webcontactAllFields.asp"
name="myForm" onSubmit="return chkForm(this);">
<!-- Do not change -->
<input type="hidden" name="ID" value="67,176,210,31,93,194,29,70,235">
<!-- These fields can be edited -->
<input type="hidden" name="responsePage" value="http://http://www.expertforyou.com/">
<input type="hidden" name="Source" value="website referral">
<input type="hidden" name="Categories" value=""><!-- semicolon;delimited no spaces -->
<input type="hidden" name="currentUser" value=""><!-- internal team member -->
<input type="hidden" name="ProgramID" value="">
<input type="hidden" name="noMail" value="0"><!-- 0/1 if set to 1, no reply to the visitor is sent. -->
<input type="hidden" name="replyMessage" value="">
<input type="hidden" name="replySubject" value="">
<input type="hidden" name="notifySubject" value="">
<input type="hidden" name="notifyCc" value=""><!-- comma, delimited -->
<input type="hidden" name="notifyBcc" value=""><!-- comma, delimited -->
<!-- These address fields are optional -->
<input type="hidden" name="address" value="">
<input type="hidden" name="city" value="">
<input type="hidden" name="state" value="">
<input type="hidden" name="zip" value="">
<!-- For any additional fields, add the field names separated by a comma to the CommaDelimitedFormFields value. These fields will be saved in the extra notes section -->
<input type="hidden" name="CommaDelimitedFormFields" value="">
<script language=javascript>
<!--
function chkForm(theForm) {
if(theForm.CFirst.value=="") {
alert("Please fill in your first name.");
theForm.CFirst.focus();
return false;
}
if(theForm.CLast.value=="") {
alert("Please fill in your last name.");
theForm.CLast.focus();
return false;
}
var email = theForm.CEmail.value;
if(email.indexOf("@")<1){
alert("Please fill in your email address \n so I may contact you.");
theForm.CEmail.focus();
return false;
}
if(document.all) {
if(theForm.Message.innerText=="") {
alert("Please type a message.");
theForm.Message.focus();
return false;
}
} else {
if(theForm.Message.value=="") {
alert("Please type a message.");
theForm.Message.focus();
return false;
}
}
return true;
}
-->
</script>
<tr>
<td align="right"> First Name</td>
<td>
<input type="text" name="CFirst" size="30" class="CFirst">
<font size="1">*</font>
</td>
</tr>
<tr>
<td align="right"> Last Name</td>
<td>
<input type="text" name="CLast" size="30" class="CLast">
<font size="1">*</font></td>
</tr>
<tr>
<td align="right"> Phone</td>
<td>
<input type="text" name="Phone" size="30" class="Phone">
</td>
</tr>
<tr>
<td align="right"> Fax</td>
<td align="left">
<input type="text" name="Fax" size="30" class="Fax">
</td>
</tr>
<tr>
<td align="right"> Email</td>
<td>
<input type="text" name="CEmail" size="30" class="CEmail">
<font size="1">*</font> </td>
</tr>
<tr>
<td align="right" valign="top"> Message</td>
<td valign="top">
<textarea rows="8" name="Message" id="Message" cols="40"></textarea>
<tr>
<td> </td>
<td align="left" valign="top">
<?php if ( function_exists('wp_nonce_field') )
wp_nonce_field('submit_form', 'submit_form');
?>
<input type="submit" name="Submit" value="Send" id="submit">
</td>
</tr>
</form>
Приведенная выше форма сохраняет данные на внешний сервер, но теперь мне нужно сохранить их и на моем сервере.
Поэтому я использую jQuery для этого.
Вот код для этого:
$(function(){
$('#submit').click(function() {
var $nonce = $("input#submit_form").val();
var $first = $("input.CFirst").val();
var $last = $("input.CLast").val();
var $Phone = $("input.Phone").val();
var $Fax = $("input.Fax").val();
var $CEmail = $("input.CEmail").val();
var $message = $("textarea#Message").val();
var emailReg = /^([\w-\.]+@([\w-]+\.)+[\w-]{2,4})?$/;
if($message != '' && $first !='' && $last!='' && $CEmail!='') {
$.ajax({
url:"../wp-admin/admin-ajax.php",
type:'POST',
data:'action=contact_form&nonce='+$nonce+"&first="+$first+"&last="+$last+"&Phone="+$Phone+"&Fax="+$Fax+"&CEmail="+$CEmail+"&message="+$message,
success: function() {
}
});
}
});
Теперь, если я удаляю действие из тега формы, он будет вставлять записи в мою базу данных, но я не могу этого сделать, так как я должен также сохранять данные на внешний сервер.
Кто-нибудь может знать, как мы можем это сделать?
Спасибо