我正在尝试将表单发送到2个不同的处理器。一个是我无法控制的第三方云数据库,也没有代码。另一个我简单的联系表单处理器。我正在尝试这样的事情:
<form action="mail.php" method="POST">
<input name="name" type="text" />
<input type='submit' name='submit' onclick="this.form.action="//3rdpartcloud.com";" />
根据我的理解,这不会起作用,因为它将页面留在第一个动作上,不能进行第二个动作。
我见过Ajax建议,但没有明确的例子。但是因为我将向两个文件发送相同的变量,我认为将所有变量POST到我的php表单会更容易,然后从我的php自动将它们发送到第三方服务器。我不知道他们如何处理数据,所以我想把它作为表格值而不是作为变量发送。
有没有更简单的方法来实现这一目标?什么是正确的语法?我在php中猜这样的东西:
<form action="site.com" method="POST">
<input name="name" value=$name>
但即使有效 - 如何将其自动发送到动作网址?
答案 0 :(得分:1)
首先使用ajax将您的表单汇总到您自己的网站 - 然后像往常一样将表单提交到其他网站。
你的Ajax - 看起来像这样:
<form id="form" action="theothersite.php" method="POST">
<input name="name" type="text" />
<input type='submit' id="submitbutton" />
</form>
<script type="text/javascript" >
$('#submitbutton').click(function(e){
e.preventDefault(); //stops form submission
$.ajax({
type: "POST",
url : '/yoursiteurl.php',
data: $('#form').serialize(),
success: function(data){
$('#form').submit(); //now submit the form
}
});
})
</script>
在PHP中执行:
print_r($_POST);
查看提交的值