我有一个表单,可以通过POST提交并将数据发送到2页。
我已经尝试使用javascript代码。一种表单提交有效,而另一种提交无效
<form id="add">
<input type="text" name="test">
<input type="submit" onclick="return Submit();">
</form>
javascript
function SubmitForm()
{
document.forms['add'].action='filecreate.php';
document.forms['add'].submit();
document.forms['add'].action='filecreate.fr.php';
document.forms['add'].submit();
return true;
}
第一次提交无效,但是第二次提交有效。
答案 0 :(得分:2)
由于您似乎将完全相同的数据发送给两个不同的处理程序,因此您可以掷硬币-说您只提交一种表单,然后在filecreate.php
中对它们进行处理。
发送表单时,不能在同一HTTP请求中发送两个单独的表单-因此,您既可以通过异步方法来完成它们,也可以在提交 one 之后在后台处理它们。形成。
由于您尚未显示任何PHP代码,因此我做出一些假设并编写了一些伪代码,但这足以使您入门。
因此,首先,为表单设置一个静态的动作属性。
<form id="add" action="filecreate.php">
<input type="text" name="test">
<input type="submit">
</form>
如果通过POST发送,则还需要指定方法,
<form id="add" action="filecreate.php" method="POST">
然后,在PHP中,如果将两个文件都包含在内,则可以同时执行这两个文件。意思是,在您的filecreate.php
中,您包括了filecreate.fr.php
。完成后,该文件的内容也会被执行。
<?php
// Once you require the file, it will be executed in place
require "filecreate.fr.php";
// .. handle the rest of your normal execution here.
也就是说,如果您使用不同的数据多次执行非常相似的操作,则可能要为其创建函数-遵循DRY原理(“不要重复自己”),创建一个处理结构和处理的函数,然后通过该函数分别发送数据。
答案 1 :(得分:-1)
尝试一下:
<form id="add">
<input type="text" name="test">
<input type="button" onclick="return SubmitForm();">
</form>
function SubmitForm()
{
if(document.forms['add'].onsubmit())
{
document.forms['add'].action='filecreate.php';
document.forms['add'].submit();
document.forms['add'].action='filecreate.fr.php';
document.forms['add'].submit();
}
return true;
}