亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

通過兩個操作提交相同的表單?

通過兩個操作提交相同的表單?

PHP
冉冉說 2021-09-18 21:07:01
我有一個表單可以通過 POST 提交和發送數據到 2 個頁面。我已經用javascript嘗試過代碼。一種表單提交有效,但另一種提交無效<form id="add">    <input type="text" name="test">    <input type="submit" onclick="return Submit();"></form>javascriptfunction SubmitForm(){     document.forms['add'].action='filecreate.php';     document.forms['add'].submit();     document.forms['add'].action='filecreate.fr.php';     document.forms['add'].submit();     return true;}第一次提交無效,但第二次提交有效。
查看完整描述

2 回答

?
一只名叫tom的貓

TA貢獻1906條經驗 獲得超3個贊

由于您似乎向兩個不同的處理程序發送了完全相同的數據,因此您可以拋硬幣——假設您只提交一個表單,然后在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.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 原則(“不要重復你自己”),你可能可以創建一個函數處理結構和處理,然后通過該函數單獨發送數據。


查看完整回答
反對 回復 2021-09-18
?
狐的傳說

TA貢獻1804條經驗 獲得超3個贊

嘗試這個 :


<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;

}


查看完整回答
反對 回復 2021-09-18
  • 2 回答
  • 0 關注
  • 166 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號