2013-08-22 56 views
-1

專家你好,2種形式,1提交按鈕和2個動作爲CRM的目的

  I am looking to submit two forms with one submit button and sending data to 

兩個不同的位置。我不知道哪裏可能或不可以,但我相信你的專家會爲這個問題提供一些解決方案。非常感謝您的幫助提前找到下面的代碼。

表單1(登錄)正在向login.php發送數據並且 表單2(捕獲登錄)正在向CRM文件capture.php發送數據。

echo "<center><form name=login method=post action=getlogin.php>" ; 
echo "<table border=0 cellpadding=5>"; 
echo "<tr><td>Email</td>"; 
echo "<td><input type=text name=l_email size=35></td></tr>"; 
echo "<tr><td>Password </td>"; 
echo "<td><input type=password name=l_password size=35></td></tr>"; 
echo "<form name=Capture Login action=//localhost:8888/modules/Webforms/capture.php  method=post accept-charset=utf-8>"; 
echo "<input type=hidden name=publicid value=ec556b63988fbf6a793a1e1cf2238ef0>  </input>"; 
echo "<input type=hidden name=name value=Capture Login></input>"; 
echo " </p>"; 
echo " <p>"; 
echo " <label>Last Name</label>"; 
echo " <input type=text name=lastname required=true>"; 
echo " </p>"; 
echo " <p>"; 
echo "<label>Company</label>"; 
echo "<input type=text name=company required=true>"; 
echo " </p>"; 
echo " <p>"; 
echo "<tr><td><input type=submit value='Login'></td>"; 
echo "<td><input type=reset value='Clear Form'></td></tr>"; 
echo "</table>"; 
echo "</form>"; 
echo "</form></center>"; 

回答

0

首先你不能把對方內線兩種形式,

你可以做的是使用一個表單中添加類,並使用JavaScript來提交值這兩個腳本,如果你需要幫助,毫不猶豫地問。

HTML

<form id="login-form" action="/loginurl" > 
    <input type="text" name="username"> 
    <input type="password" name="password"> 
    <input type="hidden" name="publicid" value="ec556b63988fbf6a793a1e1cf2238ef0"> 
    <input type="hidden" name="name" value="Capture Login"> 
    <input type="text" name="lastname" required="true"> 
    <input type="reset" value="Clear Form"> 
</form> 

的JavaScript

function processForm() { 
    //this function should make an ajax call to /modules/Webforms/capture.php 
    //then submit the form by calling this.submit(); 
    return false; 
} 

var form = document.getElementById('login-form'); 
if (form.attachEvent) { 
    form.attachEvent("submit", processForm); 
} else { 
    form.addEventListener("submit", processForm); 
} 
+0

非常感謝amdorra,我對PHP很陌生。請幫助我如何使用JavaScript來完成這項任務。 –

+0

我更新了答案,希望它有幫助 – amdorra

+0

我很抱歉amdorra,因爲我說我對此很新。這個腳本正在處理一個表單登錄表單,而另一個表單以不同的URL捕獲登錄表單處理。請告知我做錯了什麼?謝謝 –

0

不同的選擇確定負荷要做到這一點:

1)將2個表單張貼到2個不同的URL中。 2)有1個表單發佈到2個不同的URL。 3)有1個表單發佈到1個URL,然後進行登錄和CRM(推薦)。

爲什麼是3號?因爲執行1請求優於2,尤其是在慢速連接上。這當然是最好的做法,但據說我猜可能有一個原因,你想要做2個不同的職位。

因此,假設你有基本的jQuery知識:

var form_one = $("#form_one").serialize(); 
    $.ajax({ 
     url: "url_one.php", 
     type: "post", 
     data: form_one, 
     success: function(){ 

      $.ajax({ 
       url: "url_one.php", 
       type: "post", 
       data: form_one, 
       success: function(){ 
        alert("success"); 
        $("#result").html('Submitted successfully'); 
       }, 
       error:function(){ 
        alert("failure"); 
        $("#result").html('error with second form'); 
       } 
      }); 
     }, 
     error:function(){ 
      alert("failure"); 
      $("#result").html('Error with first form'); 
     } 
    }); 

那麼,我做的是:

  • 當你點擊提交按鈕
  • 我序列的第一種形式,並張貼
  • 如果成功,我序列化第二個表單併發布。

這就是說,壞習慣。提交一個表單,到一個URL,然後讓php做兩個邏輯!

+0

非常感謝Weo,你可以舉個小例子。對不起,當你說數據時,我對這個 –

+0

非常陌生:form_one將HTML表單的HTML代碼保持與上面我的問題相同嗎? –

+0

我認爲你的答案可能會工作,但沒有一個小例子,我不能將它應用於我的情況 –