[英]Submit same form with two action?
我有一個表單,可以通過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;
}
第一個提交無效,但是第二個提交有效。
由於您似乎將完全相同的數據發送給兩個不同的處理程序,因此您可以擲硬幣-說您只提交一種表單,然后在filecreate.php
中對它們進行filecreate.php
。
在發送表單時,您無法在同一HTTP請求中發送兩個單獨的表單-因此,您既可以通過異步方法來完成它們,也可以在提交一個表單后在后台處理它們。
由於您尚未顯示任何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.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原理(“不要重復自己”),您可以創建一個函數處理結構和處理,然后通過該函數分別發送數據。
嘗試這個 :
<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;
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.